puppet 6.16.0-universal-darwin → 6.20.0-universal-darwin
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 +2 -16
- data/Gemfile +6 -2
- data/Gemfile.lock +40 -36
- data/README.md +3 -4
- data/Rakefile +4 -12
- data/lib/puppet/agent.rb +2 -2
- data/lib/puppet/agent/locker.rb +0 -7
- data/lib/puppet/application.rb +10 -6
- data/lib/puppet/application/agent.rb +23 -6
- data/lib/puppet/application/apply.rb +20 -21
- data/lib/puppet/application/device.rb +1 -0
- data/lib/puppet/application/doc.rb +1 -1
- data/lib/puppet/application/filebucket.rb +2 -2
- data/lib/puppet/application/lookup.rb +16 -4
- data/lib/puppet/application/script.rb +1 -0
- data/lib/puppet/application_support.rb +7 -0
- data/lib/puppet/configurer.rb +70 -20
- data/lib/puppet/configurer/downloader.rb +31 -10
- data/lib/puppet/confine.rb +2 -2
- data/lib/puppet/confine/any.rb +1 -1
- data/lib/puppet/defaults.rb +113 -46
- data/lib/puppet/environments.rb +84 -59
- data/lib/puppet/face/catalog.rb +1 -1
- data/lib/puppet/face/config.rb +56 -16
- data/lib/puppet/face/epp.rb +12 -2
- data/lib/puppet/face/facts.rb +60 -0
- data/lib/puppet/face/node.rb +3 -3
- data/lib/puppet/face/node/clean.rb +2 -2
- data/lib/puppet/face/status.rb +1 -1
- data/lib/puppet/feature/base.rb +1 -1
- data/lib/puppet/ffi/posix.rb +10 -0
- data/lib/puppet/ffi/posix/constants.rb +14 -0
- data/lib/puppet/ffi/posix/functions.rb +24 -0
- data/lib/puppet/file_bucket/dipper.rb +1 -1
- data/lib/puppet/file_serving/http_metadata.rb +13 -1
- data/lib/puppet/file_serving/metadata.rb +4 -1
- data/lib/puppet/file_serving/mount/locales.rb +1 -2
- data/lib/puppet/file_serving/mount/pluginfacts.rb +1 -2
- data/lib/puppet/file_serving/mount/plugins.rb +1 -2
- data/lib/puppet/file_serving/terminus_selector.rb +7 -8
- data/lib/puppet/file_system/file_impl.rb +4 -4
- data/lib/puppet/file_system/uniquefile.rb +8 -16
- data/lib/puppet/forge.rb +1 -1
- data/lib/puppet/forge/cache.rb +1 -1
- data/lib/puppet/forge/repository.rb +3 -7
- data/lib/puppet/functions/epp.rb +1 -0
- data/lib/puppet/functions/inline_epp.rb +1 -0
- data/lib/puppet/functions/lstrip.rb +4 -4
- data/lib/puppet/functions/new.rb +8 -3
- data/lib/puppet/functions/reverse_each.rb +1 -1
- data/lib/puppet/functions/rstrip.rb +4 -4
- data/lib/puppet/functions/step.rb +1 -1
- data/lib/puppet/functions/strip.rb +4 -4
- data/lib/puppet/gettext/config.rb +5 -5
- data/lib/puppet/gettext/module_translations.rb +4 -4
- data/lib/puppet/http.rb +1 -0
- data/lib/puppet/http/client.rb +6 -1
- data/lib/puppet/http/redirector.rb +9 -7
- data/lib/puppet/http/resolver.rb +5 -8
- data/lib/puppet/http/resolver/server_list.rb +18 -36
- data/lib/puppet/http/resolver/settings.rb +4 -4
- data/lib/puppet/http/resolver/srv.rb +5 -5
- data/lib/puppet/http/response.rb +19 -0
- data/lib/puppet/http/service.rb +3 -1
- data/lib/puppet/http/service/compiler.rb +1 -1
- data/lib/puppet/http/service/file_server.rb +1 -1
- data/lib/puppet/http/service/puppetserver.rb +39 -0
- data/lib/puppet/http/session.rb +5 -4
- data/lib/puppet/indirector.rb +1 -1
- data/lib/puppet/indirector/catalog/compiler.rb +1 -1
- data/lib/puppet/indirector/exec.rb +1 -1
- data/lib/puppet/indirector/fact_search.rb +60 -0
- data/lib/puppet/indirector/facts/facter.rb +3 -3
- data/lib/puppet/indirector/facts/json.rb +27 -0
- data/lib/puppet/indirector/facts/yaml.rb +4 -59
- data/lib/puppet/indirector/file_content/rest.rb +1 -1
- data/lib/puppet/indirector/file_metadata/http.rb +25 -5
- data/lib/puppet/indirector/file_metadata/rest.rb +2 -2
- data/lib/puppet/indirector/hiera.rb +4 -0
- data/lib/puppet/indirector/indirection.rb +1 -1
- data/lib/puppet/indirector/json.rb +5 -1
- data/lib/puppet/indirector/msgpack.rb +1 -1
- data/lib/puppet/indirector/node/json.rb +8 -0
- data/lib/puppet/indirector/report/json.rb +34 -0
- data/lib/puppet/indirector/report/processor.rb +2 -2
- data/lib/puppet/indirector/request.rb +5 -5
- data/lib/puppet/indirector/yaml.rb +1 -1
- data/lib/puppet/module.rb +1 -2
- data/lib/puppet/module_tool/applications/installer.rb +48 -2
- data/lib/puppet/module_tool/errors/shared.rb +17 -2
- data/lib/puppet/network/format_support.rb +2 -2
- data/lib/puppet/network/formats.rb +2 -1
- data/lib/puppet/network/http/api/indirected_routes.rb +1 -1
- data/lib/puppet/network/http/api/master/v3/environment.rb +3 -0
- data/lib/puppet/network/http/api/master/v3/environments.rb +0 -1
- data/lib/puppet/network/http/connection_adapter.rb +6 -4
- data/lib/puppet/network/http/route.rb +2 -2
- data/lib/puppet/node/environment.rb +12 -5
- data/lib/puppet/node/facts.rb +17 -0
- data/lib/puppet/pal/pal_impl.rb +90 -13
- data/lib/puppet/parameter.rb +1 -1
- data/lib/puppet/parser/ast/leaf.rb +7 -6
- data/lib/puppet/parser/ast/pops_bridge.rb +0 -4
- data/lib/puppet/parser/compiler.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 +4 -1
- data/lib/puppet/parser/functions.rb +21 -17
- data/lib/puppet/parser/functions/create_resources.rb +11 -7
- data/lib/puppet/parser/resource.rb +3 -2
- data/lib/puppet/parser/resource/param.rb +6 -0
- data/lib/puppet/parser/templatewrapper.rb +1 -1
- data/lib/puppet/parser/type_loader.rb +2 -2
- data/lib/puppet/pops/adaptable.rb +7 -13
- data/lib/puppet/pops/adapters.rb +8 -4
- data/lib/puppet/pops/evaluator/collectors/abstract_collector.rb +1 -3
- data/lib/puppet/pops/evaluator/deferred_resolver.rb +5 -3
- data/lib/puppet/pops/evaluator/evaluator_impl.rb +27 -8
- data/lib/puppet/pops/evaluator/runtime3_converter.rb +2 -2
- data/lib/puppet/pops/issues.rb +5 -0
- data/lib/puppet/pops/loader/runtime3_type_loader.rb +4 -2
- data/lib/puppet/pops/loaders.rb +18 -11
- data/lib/puppet/pops/lookup/context.rb +1 -1
- data/lib/puppet/pops/lookup/hiera_config.rb +14 -1
- data/lib/puppet/pops/model/ast_transformer.rb +1 -1
- data/lib/puppet/pops/resource/resource_type_impl.rb +2 -0
- data/lib/puppet/pops/types/iterable.rb +34 -8
- data/lib/puppet/pops/types/p_meta_type.rb +1 -1
- data/lib/puppet/pops/types/p_type_set_type.rb +4 -0
- data/lib/puppet/pops/validation/checker4_0.rb +29 -15
- data/lib/puppet/pops/validation/validator_factory_4_0.rb +1 -0
- data/lib/puppet/provider/file/windows.rb +1 -1
- data/lib/puppet/provider/package/apt.rb +38 -0
- data/lib/puppet/provider/package/aptitude.rb +1 -1
- data/lib/puppet/provider/package/dpkg.rb +1 -1
- data/lib/puppet/provider/package/gem.rb +4 -2
- data/lib/puppet/provider/package/pip2.rb +17 -0
- data/lib/puppet/provider/package/puppet_gem.rb +5 -0
- data/lib/puppet/provider/package/puppetserver_gem.rb +180 -0
- data/lib/puppet/provider/package/yum.rb +2 -1
- data/lib/puppet/provider/package/zypper.rb +3 -0
- data/lib/puppet/provider/service/windows.rb +23 -7
- data/lib/puppet/provider/user/aix.rb +3 -3
- data/lib/puppet/provider/user/user_role_add.rb +1 -1
- data/lib/puppet/provider/user/useradd.rb +11 -4
- data/lib/puppet/provider/user/windows_adsi.rb +18 -1
- data/lib/puppet/reference/configuration.rb +6 -5
- data/lib/puppet/reports/http.rb +2 -0
- data/lib/puppet/resource.rb +2 -1
- data/lib/puppet/resource/type.rb +10 -1
- data/lib/puppet/rest/route.rb +2 -2
- data/lib/puppet/settings.rb +63 -21
- data/lib/puppet/settings/alias_setting.rb +37 -0
- data/lib/puppet/settings/base_setting.rb +26 -2
- data/lib/puppet/ssl/ssl_context.rb +2 -2
- data/lib/puppet/ssl/ssl_provider.rb +20 -1
- data/lib/puppet/ssl/validator/default_validator.rb +1 -1
- data/lib/puppet/test/test_helper.rb +18 -13
- data/lib/puppet/transaction.rb +2 -2
- data/lib/puppet/transaction/persistence.rb +1 -1
- data/lib/puppet/transaction/report.rb +12 -8
- data/lib/puppet/trusted_external.rb +29 -1
- data/lib/puppet/type.rb +15 -7
- data/lib/puppet/type/file.rb +40 -15
- data/lib/puppet/type/file/checksum.rb +4 -4
- data/lib/puppet/type/file/source.rb +32 -12
- data/lib/puppet/type/filebucket.rb +1 -1
- data/lib/puppet/type/notify.rb +2 -2
- data/lib/puppet/type/service.rb +53 -0
- data/lib/puppet/type/user.rb +18 -3
- data/lib/puppet/util.rb +41 -3
- data/lib/puppet/util/autoload.rb +10 -15
- data/lib/puppet/util/character_encoding.rb +9 -5
- data/lib/puppet/util/checksums.rb +19 -4
- data/lib/puppet/util/connection.rb +8 -8
- data/lib/puppet/util/execution.rb +2 -2
- data/lib/puppet/util/fact_dif.rb +62 -0
- data/lib/puppet/util/fileparsing.rb +2 -2
- data/lib/puppet/util/posix.rb +54 -5
- data/lib/puppet/util/provider_features.rb +1 -1
- data/lib/puppet/util/reference.rb +1 -1
- data/lib/puppet/util/rubygems.rb +5 -1
- data/lib/puppet/util/run_mode.rb +5 -1
- data/lib/puppet/util/windows.rb +1 -0
- data/lib/puppet/util/windows/api_types.rb +60 -33
- data/lib/puppet/util/windows/eventlog.rb +1 -6
- data/lib/puppet/util/windows/monkey_patches/dir.rb +40 -0
- data/lib/puppet/util/windows/principal.rb +8 -6
- data/lib/puppet/util/windows/registry.rb +11 -11
- data/lib/puppet/util/windows/security.rb +4 -4
- data/lib/puppet/util/windows/service.rb +43 -26
- data/lib/puppet/util/windows/user.rb +242 -8
- data/lib/puppet/version.rb +1 -1
- data/locales/puppet.pot +501 -443
- data/man/man5/puppet.conf.5 +70 -24
- data/man/man8/puppet-agent.8 +8 -5
- data/man/man8/puppet-apply.8 +2 -2
- data/man/man8/puppet-catalog.8 +1 -1
- data/man/man8/puppet-config.8 +6 -6
- data/man/man8/puppet-describe.8 +1 -1
- data/man/man8/puppet-device.8 +2 -2
- data/man/man8/puppet-doc.8 +1 -1
- data/man/man8/puppet-epp.8 +1 -1
- data/man/man8/puppet-facts.8 +32 -1
- data/man/man8/puppet-filebucket.8 +3 -3
- 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 +2 -2
- data/man/man8/puppet-man.8 +1 -1
- data/man/man8/puppet-module.8 +1 -1
- data/man/man8/puppet-node.8 +7 -4
- data/man/man8/puppet-parser.8 +1 -1
- data/man/man8/puppet-plugin.8 +1 -1
- data/man/man8/puppet-report.8 +4 -1
- data/man/man8/puppet-resource.8 +1 -1
- data/man/man8/puppet-script.8 +2 -2
- data/man/man8/puppet-ssl.8 +1 -1
- data/man/man8/puppet-status.8 +2 -2
- data/man/man8/puppet.8 +2 -2
- data/spec/fixtures/integration/application/agent/cached_deferred_catalog.json +91 -0
- data/spec/fixtures/integration/application/apply/environments/spec/modules/amod/lib/puppet/provider/applytest/applytest.rb +2 -0
- data/spec/fixtures/integration/application/apply/environments/spec/modules/amod/lib/puppet/type/applytest.rb +25 -0
- data/spec/fixtures/unit/forge/bacula-releases.json +128 -0
- data/spec/fixtures/unit/forge/bacula.tar.gz +0 -0
- data/spec/fixtures/unit/provider/package/puppetserver_gem/gem-list-local-packages +30 -0
- data/spec/fixtures/unit/provider/user/aix/aix_passwd_file.out +4 -0
- data/spec/integration/application/agent_spec.rb +263 -54
- data/spec/integration/application/apply_spec.rb +168 -149
- data/spec/integration/application/doc_spec.rb +16 -6
- data/spec/integration/application/filebucket_spec.rb +70 -21
- data/spec/integration/application/help_spec.rb +42 -0
- data/spec/integration/application/lookup_spec.rb +13 -0
- data/spec/integration/application/module_spec.rb +68 -0
- data/spec/integration/application/plugin_spec.rb +53 -3
- data/spec/integration/configurer_spec.rb +14 -0
- data/spec/integration/data_binding_spec.rb +82 -0
- data/spec/integration/defaults_spec.rb +20 -3
- data/spec/integration/directory_environments_spec.rb +17 -17
- data/spec/integration/environments/setting_hooks_spec.rb +1 -1
- data/spec/integration/indirector/facts/facter_spec.rb +8 -6
- data/spec/integration/network/http_pool_spec.rb +26 -9
- data/spec/integration/node/environment_spec.rb +1 -1
- data/spec/integration/parser/compiler_spec.rb +11 -0
- data/spec/integration/resource/type_collection_spec.rb +2 -6
- data/spec/integration/transaction_spec.rb +4 -9
- data/spec/integration/type/file_spec.rb +1 -1
- data/spec/integration/util/execution_spec.rb +22 -0
- data/spec/integration/util/windows/adsi_spec.rb +5 -3
- data/spec/integration/util/windows/monkey_patches/dir_spec.rb +11 -0
- data/spec/integration/util/windows/process_spec.rb +26 -32
- data/spec/integration/util/windows/registry_spec.rb +7 -17
- data/spec/integration/util/windows/user_spec.rb +47 -5
- data/spec/integration/util_spec.rb +7 -33
- data/spec/lib/puppet_spec/matchers.rb +0 -80
- data/spec/lib/puppet_spec/puppetserver.rb +8 -0
- data/spec/lib/puppet_spec/settings.rb +6 -1
- data/spec/shared_contexts/types_setup.rb +2 -0
- data/spec/spec_helper.rb +1 -4
- data/spec/unit/agent_spec.rb +8 -6
- data/spec/unit/application/agent_spec.rb +3 -5
- data/spec/unit/application/config_spec.rb +224 -4
- data/spec/unit/application/doc_spec.rb +2 -2
- data/spec/unit/application/face_base_spec.rb +6 -4
- data/spec/unit/application/facts_spec.rb +41 -10
- data/spec/unit/application/filebucket_spec.rb +0 -2
- data/spec/unit/application/man_spec.rb +52 -0
- data/spec/unit/application/resource_spec.rb +3 -1
- data/spec/unit/application/ssl_spec.rb +15 -2
- data/spec/unit/application_spec.rb +60 -13
- data/spec/unit/configurer/downloader_spec.rb +10 -0
- data/spec/unit/configurer/fact_handler_spec.rb +4 -4
- data/spec/unit/configurer_spec.rb +86 -37
- data/spec/unit/confine/feature_spec.rb +1 -1
- data/spec/unit/confine_spec.rb +10 -3
- data/spec/unit/context/trusted_information_spec.rb +10 -4
- data/spec/unit/defaults_spec.rb +20 -1
- data/spec/unit/environments_spec.rb +176 -32
- data/spec/unit/face/config_spec.rb +65 -12
- data/spec/unit/face/node_spec.rb +2 -13
- data/spec/unit/file_serving/configuration/parser_spec.rb +0 -1
- data/spec/unit/file_serving/http_metadata_spec.rb +37 -14
- data/spec/unit/file_serving/metadata_spec.rb +3 -3
- data/spec/unit/file_serving/mount/locales_spec.rb +2 -2
- data/spec/unit/file_serving/mount/pluginfacts_spec.rb +2 -2
- data/spec/unit/file_serving/mount/plugins_spec.rb +2 -2
- data/spec/unit/file_serving/terminus_helper_spec.rb +11 -4
- data/spec/unit/file_serving/terminus_selector_spec.rb +45 -26
- data/spec/unit/file_system/uniquefile_spec.rb +18 -0
- data/spec/unit/file_system_spec.rb +1 -2
- data/spec/unit/forge/module_release_spec.rb +2 -7
- data/spec/unit/functions/inline_epp_spec.rb +26 -1
- data/spec/unit/http/client_spec.rb +64 -9
- data/spec/unit/http/resolver_spec.rb +24 -5
- data/spec/unit/http/response_spec.rb +6 -0
- data/spec/unit/http/service/ca_spec.rb +2 -3
- data/spec/unit/http/service/compiler_spec.rb +51 -3
- data/spec/unit/http/service/file_server_spec.rb +2 -3
- data/spec/unit/http/service/puppetserver_spec.rb +82 -0
- data/spec/unit/http/service/report_spec.rb +2 -3
- data/spec/unit/http/service_spec.rb +1 -2
- data/spec/unit/http/session_spec.rb +8 -21
- data/spec/unit/indirector/catalog/json_spec.rb +1 -1
- data/spec/unit/indirector/catalog/rest_spec.rb +1 -1
- data/spec/unit/indirector/face_spec.rb +0 -1
- data/spec/unit/indirector/facts/facter_spec.rb +0 -1
- data/spec/unit/indirector/facts/json_spec.rb +255 -0
- data/spec/unit/indirector/facts/rest_spec.rb +1 -1
- data/spec/unit/indirector/file_bucket_file/selector_spec.rb +26 -8
- data/spec/unit/indirector/file_metadata/http_spec.rb +27 -0
- data/spec/unit/indirector/indirection_spec.rb +8 -12
- data/spec/unit/indirector/json_spec.rb +8 -8
- data/spec/unit/indirector/key/file_spec.rb +0 -1
- data/spec/unit/indirector/msgpack_spec.rb +8 -8
- data/spec/unit/indirector/node/json_spec.rb +33 -0
- data/spec/unit/indirector/node/rest_spec.rb +1 -1
- data/spec/{integration/indirector/report/yaml.rb → unit/indirector/report/json_spec.rb} +13 -24
- data/spec/unit/indirector/report/yaml_spec.rb +72 -8
- data/spec/unit/indirector/request_spec.rb +5 -5
- data/spec/unit/indirector/rest_spec.rb +1 -1
- data/spec/unit/indirector/status/rest_spec.rb +1 -1
- data/spec/unit/indirector/yaml_spec.rb +7 -7
- data/spec/unit/indirector_spec.rb +2 -2
- data/spec/unit/interface_spec.rb +3 -3
- data/spec/unit/module_tool/applications/installer_spec.rb +66 -0
- data/spec/unit/module_tool/tar/mini_spec.rb +20 -0
- data/spec/unit/network/authconfig_spec.rb +0 -3
- data/spec/unit/network/format_support_spec.rb +3 -2
- data/spec/unit/network/http/api/indirected_routes_spec.rb +2 -10
- data/spec/unit/network/http/api/master/v3/environments_spec.rb +12 -23
- data/spec/unit/network/http/connection_spec.rb +42 -32
- data/spec/unit/network/http/handler_spec.rb +0 -5
- data/spec/unit/node/environment_spec.rb +18 -1
- data/spec/unit/parser/ast/block_expression_spec.rb +1 -1
- data/spec/unit/parser/compiler_spec.rb +3 -19
- data/spec/unit/parser/environment_compiler_spec.rb +7 -0
- data/spec/unit/parser/resource_spec.rb +14 -8
- data/spec/unit/parser/scope_spec.rb +1 -1
- data/spec/unit/parser/templatewrapper_spec.rb +4 -3
- data/spec/unit/pops/evaluator/deferred_resolver_spec.rb +20 -0
- data/spec/unit/pops/evaluator/evaluating_parser_spec.rb +15 -1
- data/spec/unit/pops/loaders/loaders_spec.rb +71 -1
- data/spec/unit/pops/lookup/lookup_spec.rb +25 -0
- data/spec/unit/pops/types/type_calculator_spec.rb +1 -11
- data/spec/unit/property_spec.rb +1 -0
- data/spec/unit/provider/exec_spec.rb +4 -3
- data/spec/unit/provider/nameservice_spec.rb +66 -65
- data/spec/unit/provider/package/apt_spec.rb +76 -3
- data/spec/unit/provider/package/aptitude_spec.rb +1 -0
- data/spec/unit/provider/package/base_spec.rb +6 -5
- data/spec/unit/provider/package/dpkg_spec.rb +22 -7
- data/spec/unit/provider/package/openbsd_spec.rb +2 -0
- data/spec/unit/provider/package/pacman_spec.rb +18 -12
- data/spec/unit/provider/package/pip2_spec.rb +36 -0
- data/spec/unit/provider/package/pip_spec.rb +6 -11
- data/spec/unit/provider/package/pkgdmg_spec.rb +0 -4
- data/spec/unit/provider/package/puppet_gem_spec.rb +4 -1
- data/spec/unit/provider/package/puppetserver_gem_spec.rb +137 -0
- data/spec/unit/provider/package/yum_spec.rb +31 -0
- data/spec/unit/provider/package/zypper_spec.rb +14 -0
- data/spec/unit/provider/service/base_spec.rb +2 -4
- data/spec/unit/provider/service/bsd_spec.rb +5 -1
- data/spec/unit/provider/service/daemontools_spec.rb +1 -1
- data/spec/unit/provider/service/debian_spec.rb +3 -5
- data/spec/unit/provider/service/freebsd_spec.rb +1 -1
- data/spec/unit/provider/service/gentoo_spec.rb +4 -5
- data/spec/unit/provider/service/init_spec.rb +45 -5
- data/spec/unit/provider/service/launchd_spec.rb +5 -6
- data/spec/unit/provider/service/openrc_spec.rb +4 -5
- data/spec/unit/provider/service/openwrt_spec.rb +1 -1
- data/spec/unit/provider/service/redhat_spec.rb +1 -1
- data/spec/unit/provider/service/runit_spec.rb +2 -1
- data/spec/unit/provider/service/smf_spec.rb +1 -1
- data/spec/unit/provider/service/src_spec.rb +3 -5
- data/spec/unit/provider/service/systemd_spec.rb +3 -6
- data/spec/unit/provider/service/upstart_spec.rb +4 -5
- data/spec/unit/provider/service/windows_spec.rb +50 -14
- data/spec/unit/provider/user/aix_spec.rb +5 -0
- data/spec/unit/provider/user/hpux_spec.rb +1 -1
- data/spec/unit/provider/user/openbsd_spec.rb +1 -0
- data/spec/unit/provider/user/pw_spec.rb +2 -0
- data/spec/unit/provider/user/useradd_spec.rb +23 -16
- data/spec/unit/provider/user/windows_adsi_spec.rb +82 -0
- data/spec/unit/provider_spec.rb +8 -10
- data/spec/unit/puppet_pal_2pec.rb +40 -0
- data/spec/unit/puppet_pal_catalog_spec.rb +45 -0
- data/spec/unit/reports/store_spec.rb +17 -13
- data/spec/unit/resource/capability_finder_spec.rb +6 -1
- data/spec/unit/resource/type_spec.rb +1 -1
- data/spec/unit/resource_spec.rb +14 -13
- data/spec/unit/rest/route_spec.rb +4 -4
- data/spec/unit/settings_spec.rb +576 -239
- data/spec/unit/ssl/base_spec.rb +0 -1
- data/spec/unit/ssl/host_spec.rb +0 -5
- data/spec/unit/ssl/ssl_provider_spec.rb +82 -50
- data/spec/unit/test/test_helper_spec.rb +17 -0
- data/spec/unit/transaction/additional_resource_generator_spec.rb +3 -7
- data/spec/unit/transaction/event_manager_spec.rb +14 -11
- data/spec/unit/transaction/persistence_spec.rb +15 -0
- data/spec/unit/transaction/report_spec.rb +3 -1
- data/spec/unit/transaction_spec.rb +13 -4
- data/spec/unit/type/file/content_spec.rb +0 -1
- data/spec/unit/type/file/selinux_spec.rb +0 -2
- data/spec/unit/type/file/source_spec.rb +4 -4
- data/spec/unit/type/file_spec.rb +122 -102
- data/spec/unit/type/filebucket_spec.rb +1 -1
- data/spec/unit/type/group_spec.rb +13 -6
- data/spec/unit/type/resources_spec.rb +7 -7
- data/spec/unit/type/service_spec.rb +210 -1
- data/spec/unit/type/tidy_spec.rb +0 -1
- data/spec/unit/type/user_spec.rb +31 -2
- data/spec/unit/type_spec.rb +52 -2
- data/spec/unit/util/at_fork_spec.rb +2 -2
- data/spec/unit/util/autoload_spec.rb +5 -1
- data/spec/unit/util/backups_spec.rb +1 -2
- data/spec/unit/util/character_encoding_spec.rb +4 -4
- data/spec/unit/util/checksums_spec.rb +16 -0
- data/spec/unit/util/command_line_spec.rb +11 -6
- data/spec/unit/util/execution_spec.rb +15 -11
- data/spec/unit/util/inifile_spec.rb +6 -14
- data/spec/unit/util/log_spec.rb +8 -7
- data/spec/unit/util/logging_spec.rb +3 -3
- data/spec/unit/util/posix_spec.rb +363 -15
- data/spec/unit/util/rubygems_spec.rb +2 -2
- data/spec/unit/util/run_mode_spec.rb +6 -6
- data/spec/unit/util/selinux_spec.rb +76 -52
- data/spec/unit/util/storage_spec.rb +3 -1
- data/spec/unit/util/suidmanager_spec.rb +44 -41
- data/spec/unit/util/windows/api_types_spec.rb +104 -40
- data/spec/unit/util/windows/service_spec.rb +4 -4
- data/spec/unit/util_spec.rb +16 -9
- data/spec/unit/x509/cert_provider_spec.rb +1 -1
- metadata +52 -53
- data/spec/integration/faces/config_spec.rb +0 -91
- data/spec/integration/faces/documentation_spec.rb +0 -57
- data/spec/integration/file_bucket/file_spec.rb +0 -50
- data/spec/integration/file_serving/content_spec.rb +0 -7
- data/spec/integration/file_serving/fileset_spec.rb +0 -12
- data/spec/integration/file_serving/metadata_spec.rb +0 -8
- data/spec/integration/file_serving/terminus_helper_spec.rb +0 -20
- data/spec/integration/file_system/uniquefile_spec.rb +0 -26
- data/spec/integration/module_tool/forge_spec.rb +0 -51
- data/spec/integration/module_tool/tar/mini_spec.rb +0 -28
- data/spec/integration/provider/service/init_spec.rb +0 -48
- data/spec/integration/provider/service/systemd_spec.rb +0 -25
- data/spec/integration/provider/service/windows_spec.rb +0 -50
- data/spec/integration/reference/providers_spec.rb +0 -21
- data/spec/integration/reports_spec.rb +0 -13
- data/spec/integration/ssl/certificate_request_spec.rb +0 -44
- data/spec/integration/ssl/host_spec.rb +0 -72
- data/spec/integration/ssl/key_spec.rb +0 -99
- data/spec/integration/test/test_helper_spec.rb +0 -31
- data/spec/shared_behaviours/file_serving_model.rb +0 -51
- data/spec/unit/face/catalog_spec.rb +0 -6
- data/spec/unit/face/man_spec.rb +0 -25
- data/spec/unit/face/module_spec.rb +0 -3
- data/spec/unit/man_spec.rb +0 -31
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 5a24e7e868ec32490a835c3837d7d189018f48b42c8027f5a7b34dacf1b50d7a
|
4
|
+
data.tar.gz: 7c684c8bcc636e3bd705c1539df0328aa024bb48a528a246e43249e0d609a8fe
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 6c2d0de3697cfabc9d4935b18671632f6e1f7870f45eddbd81fc74ee7cb294128a28b2ef7e8a5b3b77f01b931af34dbc3163474420e3342610234304e778278d
|
7
|
+
data.tar.gz: 419e6d60b2c2fcc98c7c52bf75f2a585b936c7692ed7cda698d8f9575ca57c63a2df3b2c44cd2072513635be830f8072ba5775bbe1308d7af8528ffa0faf1b35
|
data/CODEOWNERS
CHANGED
@@ -1,23 +1,9 @@
|
|
1
|
-
#
|
2
|
-
* @puppetlabs/platform-core @puppetlabs/puppetserver-maintainers
|
3
|
-
|
4
|
-
# Night's Watch
|
5
|
-
/lib/puppet/type/group @puppetlabs/night-s-watch
|
6
|
-
/lib/puppet/type/package @puppetlabs/night-s-watch
|
7
|
-
/lib/puppet/type/service @puppetlabs/night-s-watch
|
8
|
-
/lib/puppet/type/user @puppetlabs/night-s-watch
|
9
|
-
/lib/puppet/provider/group @puppetlabs/night-s-watch
|
10
|
-
/lib/puppet/provider/package @puppetlabs/night-s-watch
|
11
|
-
/lib/puppet/provider/service @puppetlabs/night-s-watch
|
12
|
-
/lib/puppet/provider/user @puppetlabs/night-s-watch
|
1
|
+
# defaults
|
2
|
+
* @puppetlabs/platform-core @puppetlabs/puppetserver-maintainers @puppetlabs/night-s-watch
|
13
3
|
|
14
4
|
# PAL
|
15
5
|
/lib/puppet/pal @puppetlabs/bolt
|
16
6
|
|
17
|
-
# puppet device
|
18
|
-
/lib/puppet/application/device.rb @puppetlabs/networking
|
19
|
-
/lib/puppet/util/network_device @puppetlabs/networking
|
20
|
-
|
21
7
|
# puppet module
|
22
8
|
/lib/puppet/application/module.rb @puppetlabs/pdk
|
23
9
|
/lib/puppet/face/module @puppetlabs/pdk
|
data/Gemfile
CHANGED
@@ -3,9 +3,9 @@ source ENV['GEM_SOURCE'] || "https://rubygems.org"
|
|
3
3
|
gemspec
|
4
4
|
|
5
5
|
def location_for(place, fake_version = nil)
|
6
|
-
if place =~ /^(git[:@][^#]*)#(.*)/
|
6
|
+
if place.is_a?(String) && place =~ /^(git[:@][^#]*)#(.*)/
|
7
7
|
[fake_version, { git: $1, branch: $2, require: false }].compact
|
8
|
-
elsif place =~ /^file:\/\/(.*)/
|
8
|
+
elsif place.is_a?(String) && place =~ /^file:\/\/(.*)/
|
9
9
|
['>= 0', { path: File.expand_path($1), require: false }]
|
10
10
|
else
|
11
11
|
[place, { require: false }]
|
@@ -19,6 +19,8 @@ gem "hiera", *location_for(ENV['HIERA_LOCATION']) if ENV.has_key?('HIERA_LOCATIO
|
|
19
19
|
gem "semantic_puppet", *location_for(ENV['SEMANTIC_PUPPET_LOCATION'] || ["~> 1.0"])
|
20
20
|
gem "puppet-resource_api", *location_for(ENV['RESOURCE_API_LOCATION'] || ["~> 1.5"])
|
21
21
|
|
22
|
+
gem "scanf" if RUBY_VERSION.to_f >= 2.7
|
23
|
+
|
22
24
|
group(:features) do
|
23
25
|
gem 'diff-lcs', '~> 1.3', require: false
|
24
26
|
gem 'hiera-eyaml', *location_for(ENV['HIERA_EYAML_LOCATION'])
|
@@ -36,9 +38,11 @@ group(:features) do
|
|
36
38
|
end
|
37
39
|
|
38
40
|
group(:test) do
|
41
|
+
gem "ffi", require: false
|
39
42
|
gem "json-schema", "~> 2.0", require: false
|
40
43
|
gem "rake", *location_for(ENV['RAKE_LOCATION'] || '~> 12.2')
|
41
44
|
gem "rspec", "~> 3.1", require: false
|
45
|
+
gem "rspec-expectations", ["~> 3.9", "!= 3.9.3"]
|
42
46
|
gem "rspec-its", "~> 1.1", require: false
|
43
47
|
gem 'vcr', '~> 5.0', require: false
|
44
48
|
gem 'webmock', '~> 3.0', require: false
|
data/Gemfile.lock
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
puppet (6.
|
4
|
+
puppet (6.20.0)
|
5
5
|
CFPropertyList (~> 2.2)
|
6
6
|
concurrent-ruby (~> 1.0)
|
7
7
|
deep_merge (~> 1.0)
|
@@ -20,19 +20,20 @@ GEM
|
|
20
20
|
addressable (2.7.0)
|
21
21
|
public_suffix (>= 2.0.2, < 5.0)
|
22
22
|
artifactory (2.8.2)
|
23
|
-
ast (2.4.
|
24
|
-
coderay (1.1.
|
25
|
-
concurrent-ruby (1.1.
|
26
|
-
crack (0.4.
|
27
|
-
|
23
|
+
ast (2.4.1)
|
24
|
+
coderay (1.1.3)
|
25
|
+
concurrent-ruby (1.1.7)
|
26
|
+
crack (0.4.5)
|
27
|
+
rexml
|
28
28
|
csv (3.1.5)
|
29
29
|
deep_merge (1.2.1)
|
30
|
-
diff-lcs (1.
|
30
|
+
diff-lcs (1.4.4)
|
31
31
|
docopt (0.6.1)
|
32
|
-
facter (4.0.
|
32
|
+
facter (4.0.49)
|
33
33
|
hocon (~> 1.3)
|
34
34
|
thor (>= 1.0.1, < 2.0)
|
35
35
|
fast_gettext (1.1.2)
|
36
|
+
ffi (1.14.2)
|
36
37
|
gettext (3.2.9)
|
37
38
|
locale (>= 2.0.5)
|
38
39
|
text (>= 1.3.0)
|
@@ -52,58 +53,60 @@ GEM
|
|
52
53
|
json-schema (2.8.1)
|
53
54
|
addressable (>= 2.4)
|
54
55
|
locale (2.1.3)
|
55
|
-
memory_profiler (0.
|
56
|
+
memory_profiler (1.0.0)
|
56
57
|
method_source (1.0.0)
|
57
58
|
minitar (0.9)
|
58
59
|
msgpack (1.3.3)
|
59
|
-
multi_json (1.
|
60
|
+
multi_json (1.15.0)
|
60
61
|
mustache (1.1.1)
|
61
62
|
optimist (3.0.1)
|
62
|
-
packaging (0.99.
|
63
|
+
packaging (0.99.75)
|
63
64
|
artifactory (~> 2)
|
65
|
+
csv (= 3.1.5)
|
64
66
|
rake (>= 12.3)
|
65
67
|
release-metrics
|
66
|
-
parallel (1.
|
67
|
-
parser (2.7.
|
68
|
-
ast (~> 2.4.
|
69
|
-
powerpack (0.1.
|
68
|
+
parallel (1.20.1)
|
69
|
+
parser (2.7.2.0)
|
70
|
+
ast (~> 2.4.1)
|
71
|
+
powerpack (0.1.3)
|
70
72
|
pry (0.13.1)
|
71
73
|
coderay (~> 1.1)
|
72
74
|
method_source (~> 1.0)
|
73
|
-
public_suffix (4.0.
|
75
|
+
public_suffix (4.0.6)
|
74
76
|
puppet-resource_api (1.8.13)
|
75
77
|
hocon (>= 1.0)
|
76
|
-
puppetserver-ca (1.
|
78
|
+
puppetserver-ca (1.9.1)
|
77
79
|
facter (>= 2.0.1, < 5)
|
78
80
|
racc (1.4.9)
|
79
81
|
rainbow (2.2.2)
|
80
82
|
rake
|
81
83
|
rake (12.3.3)
|
82
|
-
rdiscount (2.2.0.
|
83
|
-
rdoc (6.
|
84
|
+
rdiscount (2.2.0.2)
|
85
|
+
rdoc (6.3.0)
|
84
86
|
release-metrics (1.1.0)
|
85
87
|
csv
|
86
88
|
docopt
|
89
|
+
rexml (3.2.4)
|
87
90
|
ronn (0.7.3)
|
88
91
|
hpricot (>= 0.8.2)
|
89
92
|
mustache (>= 0.7.0)
|
90
93
|
rdiscount (>= 1.5.8)
|
91
|
-
rspec (3.
|
92
|
-
rspec-core (~> 3.
|
93
|
-
rspec-expectations (~> 3.
|
94
|
-
rspec-mocks (~> 3.
|
95
|
-
rspec-core (3.
|
96
|
-
rspec-support (~> 3.
|
97
|
-
rspec-expectations (3.
|
94
|
+
rspec (3.10.0)
|
95
|
+
rspec-core (~> 3.10.0)
|
96
|
+
rspec-expectations (~> 3.10.0)
|
97
|
+
rspec-mocks (~> 3.10.0)
|
98
|
+
rspec-core (3.10.1)
|
99
|
+
rspec-support (~> 3.10.0)
|
100
|
+
rspec-expectations (3.10.1)
|
98
101
|
diff-lcs (>= 1.2.0, < 2.0)
|
99
|
-
rspec-support (~> 3.
|
102
|
+
rspec-support (~> 3.10.0)
|
100
103
|
rspec-its (1.3.0)
|
101
104
|
rspec-core (>= 3.0.0)
|
102
105
|
rspec-expectations (>= 3.0.0)
|
103
|
-
rspec-mocks (3.
|
106
|
+
rspec-mocks (3.10.1)
|
104
107
|
diff-lcs (>= 1.2.0, < 2.0)
|
105
|
-
rspec-support (~> 3.
|
106
|
-
rspec-support (3.
|
108
|
+
rspec-support (~> 3.10.0)
|
109
|
+
rspec-support (3.10.1)
|
107
110
|
rubocop (0.49.1)
|
108
111
|
parallel (~> 1.10)
|
109
112
|
parser (>= 2.3.3.1, < 3.0)
|
@@ -113,25 +116,25 @@ GEM
|
|
113
116
|
unicode-display_width (~> 1.0, >= 1.0.1)
|
114
117
|
rubocop-i18n (1.2.0)
|
115
118
|
rubocop (~> 0.49.0)
|
116
|
-
ruby-prof (1.4.
|
117
|
-
ruby-progressbar (1.
|
118
|
-
|
119
|
-
semantic_puppet (1.0.2)
|
119
|
+
ruby-prof (1.4.2)
|
120
|
+
ruby-progressbar (1.11.0)
|
121
|
+
semantic_puppet (1.0.3)
|
120
122
|
text (1.3.1)
|
121
123
|
thor (1.0.1)
|
122
124
|
unicode-display_width (1.7.0)
|
123
125
|
vcr (5.1.0)
|
124
|
-
webmock (3.
|
126
|
+
webmock (3.11.1)
|
125
127
|
addressable (>= 2.3.6)
|
126
128
|
crack (>= 0.3.2)
|
127
129
|
hashdiff (>= 0.4.0, < 2.0.0)
|
128
|
-
yard (0.9.
|
130
|
+
yard (0.9.26)
|
129
131
|
|
130
132
|
PLATFORMS
|
131
133
|
ruby
|
132
134
|
|
133
135
|
DEPENDENCIES
|
134
136
|
diff-lcs (~> 1.3)
|
137
|
+
ffi
|
135
138
|
gettext-setup (~> 0.28)
|
136
139
|
hiera-eyaml
|
137
140
|
hocon (~> 1.0)
|
@@ -149,6 +152,7 @@ DEPENDENCIES
|
|
149
152
|
rdoc (~> 6.0)
|
150
153
|
ronn (~> 0.7.3)
|
151
154
|
rspec (~> 3.1)
|
155
|
+
rspec-expectations (~> 3.9, != 3.9.3)
|
152
156
|
rspec-its (~> 1.1)
|
153
157
|
rubocop (~> 0.49)
|
154
158
|
rubocop-i18n (~> 1.2.0)
|
data/README.md
CHANGED
@@ -1,7 +1,6 @@
|
|
1
1
|
# Puppet
|
2
2
|
|
3
|
-
|
4
|
-
[![Appveyor Status](https://ci.appveyor.com/api/projects/status/cvhpypd4504sevqq/branch/master?svg=true)](https://ci.appveyor.com/project/puppetlabs/puppet/branch/master)
|
3
|
+
![RSpec tests](https://github.com/puppetlabs/puppet/workflows/RSpec%20tests/badge.svg)
|
5
4
|
[![Gem Version](https://badge.fury.io/rb/puppet.svg)](https://badge.fury.io/rb/puppet)
|
6
5
|
[![Inline docs](https://inch-ci.org/github/puppetlabs/puppet.svg)](https://inch-ci.org/github/puppetlabs/puppet)
|
7
6
|
|
@@ -25,10 +24,10 @@ which also includes orchestration features, a web console, and professional supp
|
|
25
24
|
The PE documentation is [available here.](https://puppet.com/docs/pe/latest)
|
26
25
|
|
27
26
|
To install an open source release of Puppet,
|
28
|
-
[see the installation guide on the docs site.](https://puppet.com/docs/puppet/
|
27
|
+
[see the installation guide on the docs site.](https://puppet.com/docs/puppet/latest/installing_and_upgrading.html)
|
29
28
|
|
30
29
|
If you need to run Puppet from source as a tester or developer,
|
31
|
-
see the [
|
30
|
+
see the [Quick Start to Developing on Puppet](docs/quickstart.md) guide.
|
32
31
|
|
33
32
|
## Developing and Contributing
|
34
33
|
|
data/Rakefile
CHANGED
@@ -61,12 +61,8 @@ end
|
|
61
61
|
desc "verify that commit messages match CONTRIBUTING.md requirements"
|
62
62
|
task(:commits) do
|
63
63
|
# This rake task looks at the summary from every commit from this branch not
|
64
|
-
# in the branch targeted for a PR.
|
65
|
-
|
66
|
-
# populated with the range of commits the PR contains. If not available, this
|
67
|
-
# falls back to `master..HEAD` as a next best bet as `master` is unlikely to
|
68
|
-
# ever be absent.
|
69
|
-
commit_range = ENV['TRAVIS_COMMIT_RANGE'].nil? ? 'master..HEAD' : ENV['TRAVIS_COMMIT_RANGE'].sub(/\.\.\./, '..')
|
64
|
+
# in the branch targeted for a PR.
|
65
|
+
commit_range = 'HEAD^..HEAD'
|
70
66
|
puts "Checking commits #{commit_range}"
|
71
67
|
%x{git log --no-merges --pretty=%s #{commit_range}}.each_line do |commit_summary|
|
72
68
|
# This regex tests for the currently supported commit summary tokens: maint, doc, packaging, or pup-<number>.
|
@@ -91,12 +87,8 @@ end
|
|
91
87
|
|
92
88
|
desc "verify that changed files are clean of Ruby warnings"
|
93
89
|
task(:warnings) do
|
94
|
-
# This rake task looks at all files modified in this branch.
|
95
|
-
|
96
|
-
# is present in travis CI and populated with the range of commits the PR
|
97
|
-
# contains. If not available, this falls back to `master..HEAD` as a next
|
98
|
-
# best bet as `master` is unlikely to ever be absent.
|
99
|
-
commit_range = ENV['TRAVIS_COMMIT_RANGE'].nil? ? 'master...HEAD' : ENV['TRAVIS_COMMIT_RANGE']
|
90
|
+
# This rake task looks at all files modified in this branch.
|
91
|
+
commit_range = 'HEAD^..HEAD'
|
100
92
|
ruby_files_ok = true
|
101
93
|
puts "Checking modified files #{commit_range}"
|
102
94
|
%x{git diff --diff-filter=ACM --name-only #{commit_range}}.each_line do |modified_file|
|
data/lib/puppet/agent.rb
CHANGED
@@ -64,10 +64,10 @@ class Puppet::Agent
|
|
64
64
|
now = Time.now.to_i
|
65
65
|
wait_for_lock_deadline ||= now + Puppet[:maxwaitforlock]
|
66
66
|
|
67
|
-
if Puppet[:waitforlock]
|
67
|
+
if Puppet[:waitforlock] < 1
|
68
68
|
Puppet.notice _("Run of %{client_class} already in progress; skipping (%{lockfile_path} exists)") % { client_class: client_class, lockfile_path: lockfile_path }
|
69
69
|
nil
|
70
|
-
elsif now
|
70
|
+
elsif now >= wait_for_lock_deadline
|
71
71
|
Puppet.notice _("Exiting now because the maxwaitforlock timeout has been exceeded.")
|
72
72
|
nil
|
73
73
|
else
|
data/lib/puppet/agent/locker.rb
CHANGED
@@ -27,14 +27,7 @@ module Puppet::Agent::Locker
|
|
27
27
|
end
|
28
28
|
end
|
29
29
|
|
30
|
-
# @deprecated
|
31
30
|
def running?
|
32
|
-
#TRANSLATORS 'Puppet::Agent::Locker.running?' is a method name and should not be translated
|
33
|
-
message = _('Puppet::Agent::Locker.running? is deprecated as it is inherently unsafe.')
|
34
|
-
#TRANSLATORS 'LockError' should not be translated
|
35
|
-
message += ' ' + _('The only safe way to know if the lock is locked is to try lock and perform some '\
|
36
|
-
'action and then handle the LockError that may result.')
|
37
|
-
Puppet.deprecation_warning(message)
|
38
31
|
lockfile.locked?
|
39
32
|
end
|
40
33
|
|
data/lib/puppet/application.rb
CHANGED
@@ -420,12 +420,16 @@ class Application
|
|
420
420
|
def handle_logdest_arg(arg)
|
421
421
|
return if arg.nil?
|
422
422
|
|
423
|
-
|
424
|
-
|
425
|
-
|
426
|
-
|
427
|
-
|
428
|
-
|
423
|
+
logdest = arg.split(',').map!(&:strip)
|
424
|
+
Puppet[:logdest] = arg
|
425
|
+
|
426
|
+
logdest.each do |dest|
|
427
|
+
begin
|
428
|
+
Puppet::Util::Log.newdestination(dest)
|
429
|
+
options[:setdest] = true
|
430
|
+
rescue => detail
|
431
|
+
Puppet.log_and_raise(detail, _("Could not set logdest to %{dest}.") % { dest: arg })
|
432
|
+
end
|
429
433
|
end
|
430
434
|
end
|
431
435
|
|
@@ -103,7 +103,7 @@ USAGE
|
|
103
103
|
puppet agent [--certname <NAME>] [-D|--daemonize|--no-daemonize]
|
104
104
|
[-d|--debug] [--detailed-exitcodes] [--digest <DIGEST>] [--disable [MESSAGE]] [--enable]
|
105
105
|
[--fingerprint] [-h|--help] [-l|--logdest syslog|eventlog|<ABS FILEPATH>|console]
|
106
|
-
[--
|
106
|
+
[--serverport <PORT>] [--noop] [-o|--onetime] [--sourceaddress <IP_ADDRESS>] [-t|--test]
|
107
107
|
[-v|--verbose] [-V|--version] [-w|--waitforcert <SECONDS>]
|
108
108
|
|
109
109
|
|
@@ -258,13 +258,16 @@ generated by running puppet agent with '--genconfig'.
|
|
258
258
|
|
259
259
|
* --job-id:
|
260
260
|
Attach the specified job id to the catalog request and the report used for
|
261
|
-
this agent run. This option only works when '--onetime' is used.
|
261
|
+
this agent run. This option only works when '--onetime' is used. When using
|
262
|
+
Puppet Enterprise this flag should not be used as the orchestrator sets the
|
263
|
+
job-id for you and it must be unique.
|
262
264
|
|
263
265
|
* --logdest:
|
264
266
|
Where to send log messages. Choose between 'syslog' (the POSIX syslog
|
265
267
|
service), 'eventlog' (the Windows Event Log), 'console', or the path to a log
|
266
268
|
file. If debugging or verbosity is enabled, this defaults to 'console'.
|
267
269
|
Otherwise, it defaults to 'syslog' on POSIX systems and 'eventlog' on Windows.
|
270
|
+
Multiple destinations can be set using a comma separated list (eg: `/path/file1,console,/path/file2`)"
|
268
271
|
|
269
272
|
A path ending with '.json' will receive structured output in JSON format. The
|
270
273
|
log file will not have an ending ']' automatically written to it due to the
|
@@ -275,8 +278,9 @@ generated by running puppet agent with '--genconfig'.
|
|
275
278
|
format.
|
276
279
|
|
277
280
|
* --masterport:
|
278
|
-
The port on which to contact the
|
279
|
-
(This is a Puppet setting, and can go in puppet.conf.
|
281
|
+
The port on which to contact the Puppet Server.
|
282
|
+
(This is a Puppet setting, and can go in puppet.conf.
|
283
|
+
Deprecated in favor of the 'serverport' setting.)
|
280
284
|
|
281
285
|
* --noop:
|
282
286
|
Use 'noop' mode where the daemon runs in a no-op or dry-run mode. This
|
@@ -292,6 +296,10 @@ generated by running puppet agent with '--genconfig'.
|
|
292
296
|
(This is a Puppet setting, and can go in puppet.conf. Note the special 'no-'
|
293
297
|
prefix for boolean settings on the command line.)
|
294
298
|
|
299
|
+
* --serverport:
|
300
|
+
The port on which to contact the Puppet Server.
|
301
|
+
(This is a Puppet setting, and can go in puppet.conf.)
|
302
|
+
|
295
303
|
* --sourceaddress:
|
296
304
|
Set the source IP address for transactions. This defaults to automatically selected.
|
297
305
|
(This is a Puppet setting, and can go in puppet.conf.)
|
@@ -363,8 +371,17 @@ Copyright (c) 2011 Puppet Inc., LLC Licensed under the Apache 2.0 License
|
|
363
371
|
daemon.set_signal_traps
|
364
372
|
|
365
373
|
log_config if Puppet[:daemonize]
|
366
|
-
|
367
|
-
|
374
|
+
|
375
|
+
# run ssl state machine, waiting if needed
|
376
|
+
ssl_context = wait_for_certificates
|
377
|
+
|
378
|
+
# Each application is responsible for pushing loaders onto the context.
|
379
|
+
# Use the current environment that has already been established, though
|
380
|
+
# it may change later during the configurer run.
|
381
|
+
env = Puppet.lookup(:current_environment)
|
382
|
+
Puppet.override(ssl_context: ssl_context,
|
383
|
+
current_environment: env,
|
384
|
+
loaders: Puppet::Pops::Loaders.new(env, true)) do
|
368
385
|
if Puppet[:onetime]
|
369
386
|
onetime(daemon)
|
370
387
|
else
|
@@ -113,6 +113,7 @@ configuration options by running puppet with
|
|
113
113
|
Where to send log messages. Choose between 'syslog' (the POSIX syslog
|
114
114
|
service), 'eventlog' (the Windows Event Log), 'console', or the path to a log
|
115
115
|
file. Defaults to 'console'.
|
116
|
+
Multiple destinations can be set using a comma separated list (eg: `/path/file1,console,/path/file2`)"
|
116
117
|
|
117
118
|
A path ending with '.json' will receive structured output in JSON format. The
|
118
119
|
log file will not have an ending ']' automatically written to it due to the
|
@@ -190,7 +191,7 @@ Copyright (c) 2011 Puppet Inc., LLC Licensed under the Apache 2.0 License
|
|
190
191
|
text = Puppet::FileSystem.read(options[:catalog], :encoding => 'utf-8')
|
191
192
|
end
|
192
193
|
env = Puppet.lookup(:environments).get(Puppet[:environment])
|
193
|
-
Puppet.override(:current_environment => env, :loaders =>
|
194
|
+
Puppet.override(:current_environment => env, :loaders => create_loaders(env)) do
|
194
195
|
catalog = read_catalog(text)
|
195
196
|
apply_catalog(catalog)
|
196
197
|
end
|
@@ -204,7 +205,7 @@ Copyright (c) 2011 Puppet Inc., LLC Licensed under the Apache 2.0 License
|
|
204
205
|
apply_environment = get_configured_environment(node, manifest)
|
205
206
|
|
206
207
|
# TRANSLATORS "puppet apply" is a program command and should not be translated
|
207
|
-
Puppet.override({:current_environment => apply_environment}, _("For puppet apply")) do
|
208
|
+
Puppet.override({:current_environment => apply_environment, :loaders => create_loaders(apply_environment)}, _("For puppet apply")) do
|
208
209
|
configure_node_facts(node, facts)
|
209
210
|
|
210
211
|
# Allow users to load the classes that puppet agent creates.
|
@@ -235,30 +236,23 @@ Copyright (c) 2011 Puppet Inc., LLC Licensed under the Apache 2.0 License
|
|
235
236
|
exit(1)
|
236
237
|
end
|
237
238
|
|
238
|
-
#
|
239
|
-
|
240
|
-
# required steps as it is expensive to set up loaders twice (once for
|
241
|
-
# resolution and once for the apply).
|
242
|
-
#
|
243
|
-
exit_status = Puppet.override(:loaders => Puppet::Pops::Loaders.new(apply_environment)) do
|
239
|
+
# Resolve all deferred values and replace them / mutate the catalog
|
240
|
+
Puppet::Pops::Evaluator::DeferredResolver.resolve_and_replace(node.facts, catalog, apply_environment)
|
244
241
|
|
245
|
-
|
246
|
-
|
242
|
+
# Translate it to a RAL catalog
|
243
|
+
catalog = catalog.to_ral
|
247
244
|
|
248
|
-
|
249
|
-
catalog = catalog.to_ral
|
245
|
+
catalog.finalize
|
250
246
|
|
251
|
-
|
247
|
+
catalog.retrieval_duration = Time.now - starttime
|
252
248
|
|
253
|
-
|
249
|
+
if options[:write_catalog_summary]
|
250
|
+
catalog.write_class_file
|
251
|
+
catalog.write_resource_file
|
252
|
+
end
|
254
253
|
|
255
|
-
|
256
|
-
catalog.write_class_file
|
257
|
-
catalog.write_resource_file
|
258
|
-
end
|
254
|
+
exit_status = apply_catalog(catalog)
|
259
255
|
|
260
|
-
apply_catalog(catalog)
|
261
|
-
end
|
262
256
|
if not exit_status
|
263
257
|
exit(1)
|
264
258
|
elsif options[:detailed_exitcodes] then
|
@@ -313,6 +307,11 @@ Copyright (c) 2011 Puppet Inc., LLC Licensed under the Apache 2.0 License
|
|
313
307
|
|
314
308
|
private
|
315
309
|
|
310
|
+
def create_loaders(env)
|
311
|
+
# Ignore both 'cached_puppet_lib' and pcore resource type loaders
|
312
|
+
Puppet::Pops::Loaders.new(env, false, false)
|
313
|
+
end
|
314
|
+
|
316
315
|
def read_catalog(text)
|
317
316
|
facts = get_facts()
|
318
317
|
node = get_node()
|
@@ -332,7 +331,7 @@ Copyright (c) 2011 Puppet Inc., LLC Licensed under the Apache 2.0 License
|
|
332
331
|
raise Puppet::Error, _("Could not deserialize catalog from %{format}: %{detail}") % { format: format, detail: detail }, detail.backtrace
|
333
332
|
end
|
334
333
|
# Resolve all deferred values and replace them / mutate the catalog
|
335
|
-
Puppet::Pops::Evaluator::DeferredResolver.resolve_and_replace(node.facts, catalog)
|
334
|
+
Puppet::Pops::Evaluator::DeferredResolver.resolve_and_replace(node.facts, catalog, configured_environment)
|
336
335
|
|
337
336
|
catalog.to_ral
|
338
337
|
end
|