puppet 6.19.0-x86-mingw32 → 7.3.0-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 +2 -16
- data/Gemfile +3 -4
- data/Gemfile.lock +33 -28
- data/README.md +1 -1
- data/conf/fileserver.conf +5 -10
- data/ext/build_defaults.yaml +1 -1
- data/ext/osx/file_mapping.yaml +0 -5
- data/ext/project_data.yaml +2 -14
- data/ext/redhat/puppet.spec.erb +0 -1
- data/ext/windows/service/daemon.rb +6 -5
- data/install.rb +21 -17
- data/lib/puppet.rb +11 -20
- data/lib/puppet/application.rb +182 -104
- data/lib/puppet/application/agent.rb +1 -0
- data/lib/puppet/application/apply.rb +3 -2
- data/lib/puppet/application/device.rb +101 -104
- data/lib/puppet/application/filebucket.rb +15 -11
- data/lib/puppet/application/script.rb +1 -0
- data/lib/puppet/application/ssl.rb +1 -1
- data/lib/puppet/application_support.rb +7 -0
- data/lib/puppet/configurer.rb +44 -36
- data/lib/puppet/configurer/plugin_handler.rb +21 -19
- data/lib/puppet/defaults.rb +71 -170
- data/lib/puppet/environments.rb +44 -75
- data/lib/puppet/face/config.rb +10 -0
- data/lib/puppet/face/epp.rb +12 -2
- data/lib/puppet/face/facts.rb +80 -6
- data/lib/puppet/face/help.rb +1 -1
- data/lib/puppet/face/node/clean.rb +8 -0
- data/lib/puppet/face/plugin.rb +5 -8
- 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/ffi/windows.rb +12 -0
- data/lib/puppet/ffi/windows/api_types.rb +311 -0
- data/lib/puppet/ffi/windows/constants.rb +404 -0
- data/lib/puppet/ffi/windows/functions.rb +628 -0
- data/lib/puppet/ffi/windows/structs.rb +338 -0
- data/lib/puppet/file_serving/configuration.rb +0 -5
- data/lib/puppet/file_serving/configuration/parser.rb +6 -32
- data/lib/puppet/file_serving/http_metadata.rb +1 -1
- data/lib/puppet/file_serving/mount.rb +1 -2
- data/lib/puppet/forge/repository.rb +0 -1
- data/lib/puppet/functions/epp.rb +1 -0
- data/lib/puppet/functions/inline_epp.rb +1 -0
- data/lib/puppet/generate/models/type/type.rb +4 -1
- data/lib/puppet/http.rb +22 -13
- data/lib/puppet/http/client.rb +164 -114
- data/lib/puppet/{network/resolver.rb → http/dns.rb} +2 -2
- data/lib/puppet/http/errors.rb +16 -0
- data/lib/puppet/http/external_client.rb +5 -7
- data/lib/puppet/{network/http → http}/factory.rb +8 -11
- data/lib/puppet/{network/http → http}/pool.rb +61 -26
- data/lib/puppet/{network/http/session.rb → http/pool_entry.rb} +2 -3
- data/lib/puppet/http/proxy.rb +137 -0
- data/lib/puppet/http/redirector.rb +4 -12
- data/lib/puppet/http/resolver.rb +5 -15
- data/lib/puppet/http/resolver/server_list.rb +6 -10
- data/lib/puppet/http/resolver/settings.rb +4 -7
- data/lib/puppet/http/resolver/srv.rb +7 -11
- data/lib/puppet/http/response.rb +36 -54
- data/lib/puppet/http/response_converter.rb +24 -0
- data/lib/puppet/http/response_net_http.rb +42 -0
- data/lib/puppet/http/retry_after_handler.rb +4 -13
- data/lib/puppet/http/service.rb +12 -26
- data/lib/puppet/http/service/ca.rb +11 -22
- data/lib/puppet/http/service/compiler.rb +22 -69
- data/lib/puppet/http/service/file_server.rb +18 -27
- data/lib/puppet/http/service/puppetserver.rb +26 -12
- data/lib/puppet/http/service/report.rb +8 -10
- data/lib/puppet/http/session.rb +11 -20
- data/lib/puppet/{network/http → http}/site.rb +1 -2
- data/lib/puppet/indirector/catalog/rest.rb +2 -4
- data/lib/puppet/indirector/fact_search.rb +60 -0
- data/lib/puppet/indirector/facts/facter.rb +24 -3
- data/lib/puppet/indirector/facts/json.rb +27 -0
- data/lib/puppet/indirector/facts/rest.rb +3 -22
- data/lib/puppet/indirector/facts/yaml.rb +3 -58
- data/lib/puppet/indirector/file_bucket_file/rest.rb +3 -9
- data/lib/puppet/indirector/file_content/rest.rb +2 -6
- data/lib/puppet/indirector/file_metadata/rest.rb +3 -9
- data/lib/puppet/indirector/file_server.rb +1 -8
- data/lib/puppet/indirector/generic_http.rb +0 -11
- data/lib/puppet/indirector/json.rb +5 -1
- data/lib/puppet/indirector/node/json.rb +8 -0
- data/lib/puppet/indirector/node/rest.rb +2 -4
- data/lib/puppet/indirector/report/json.rb +34 -0
- data/lib/puppet/indirector/report/rest.rb +3 -8
- data/lib/puppet/indirector/request.rb +0 -101
- data/lib/puppet/indirector/rest.rb +12 -263
- data/lib/puppet/module_tool/applications.rb +0 -1
- data/lib/puppet/module_tool/applications/installer.rb +48 -2
- data/lib/puppet/module_tool/errors/shared.rb +17 -2
- data/lib/puppet/network/authconfig.rb +2 -96
- data/lib/puppet/network/authorization.rb +13 -35
- data/lib/puppet/network/formats.rb +69 -1
- data/lib/puppet/network/http.rb +3 -3
- data/lib/puppet/network/http/api/indirected_routes.rb +2 -20
- data/lib/puppet/network/http/api/master/v3.rb +11 -13
- data/lib/puppet/network/http/connection.rb +247 -316
- data/lib/puppet/network/http/handler.rb +0 -1
- data/lib/puppet/network/http_pool.rb +16 -34
- data/lib/puppet/node.rb +1 -30
- data/lib/puppet/pal/json_catalog_encoder.rb +4 -0
- data/lib/puppet/pal/pal_impl.rb +73 -18
- data/lib/puppet/parser/ast/leaf.rb +3 -2
- data/lib/puppet/parser/ast/pops_bridge.rb +0 -38
- data/lib/puppet/parser/compiler.rb +0 -198
- data/lib/puppet/parser/compiler/catalog_validator/relationship_validator.rb +14 -39
- data/lib/puppet/parser/resource.rb +0 -69
- data/lib/puppet/parser/templatewrapper.rb +1 -1
- data/lib/puppet/pops/evaluator/deferred_resolver.rb +5 -3
- data/lib/puppet/pops/evaluator/evaluator_impl.rb +22 -8
- data/lib/puppet/pops/evaluator/runtime3_resource_support.rb +3 -3
- data/lib/puppet/pops/evaluator/runtime3_support.rb +1 -1
- data/lib/puppet/pops/issues.rb +0 -5
- data/lib/puppet/pops/loader/ruby_legacy_function_instantiator.rb +6 -8
- data/lib/puppet/pops/model/ast.pp +0 -42
- data/lib/puppet/pops/model/ast.rb +0 -290
- data/lib/puppet/pops/model/ast_transformer.rb +1 -1
- data/lib/puppet/pops/model/factory.rb +0 -45
- data/lib/puppet/pops/model/model_label_provider.rb +0 -5
- data/lib/puppet/pops/model/model_tree_dumper.rb +0 -22
- data/lib/puppet/pops/model/pn_transformer.rb +0 -16
- data/lib/puppet/pops/parser/egrammar.ra +0 -56
- data/lib/puppet/pops/parser/eparser.rb +1520 -1712
- data/lib/puppet/pops/parser/lexer2.rb +4 -4
- data/lib/puppet/pops/parser/parser_support.rb +0 -5
- data/lib/puppet/pops/resource/resource_type_impl.rb +2 -24
- data/lib/puppet/pops/types/type_calculator.rb +0 -7
- data/lib/puppet/pops/types/type_parser.rb +0 -4
- data/lib/puppet/pops/types/types.rb +0 -1
- data/lib/puppet/pops/validation/checker4_0.rb +9 -37
- data/lib/puppet/pops/validation/tasks_checker.rb +0 -12
- data/lib/puppet/pops/validation/validator_factory_4_0.rb +1 -2
- data/lib/puppet/provider.rb +0 -13
- data/lib/puppet/provider/nameservice.rb +0 -18
- data/lib/puppet/provider/package/apt.rb +4 -0
- data/lib/puppet/provider/package/dpkg.rb +0 -10
- data/lib/puppet/provider/package/gem.rb +23 -3
- data/lib/puppet/provider/package/pip.rb +0 -1
- data/lib/puppet/provider/package/pkg.rb +0 -4
- data/lib/puppet/provider/package/portage.rb +1 -1
- data/lib/puppet/provider/package/puppet_gem.rb +1 -4
- data/lib/puppet/provider/service/smf.rb +191 -73
- data/lib/puppet/provider/user/aix.rb +2 -2
- data/lib/puppet/provider/user/directoryservice.rb +0 -10
- data/lib/puppet/reference/configuration.rb +8 -5
- data/lib/puppet/reference/indirection.rb +1 -1
- data/lib/puppet/resource.rb +1 -89
- data/lib/puppet/resource/catalog.rb +1 -14
- data/lib/puppet/resource/type.rb +3 -119
- data/lib/puppet/resource/type_collection.rb +3 -48
- data/lib/puppet/runtime.rb +1 -2
- data/lib/puppet/settings.rb +88 -48
- data/lib/puppet/settings/alias_setting.rb +37 -0
- data/lib/puppet/settings/base_setting.rb +26 -2
- data/lib/puppet/settings/integer_setting.rb +17 -0
- data/lib/puppet/settings/port_setting.rb +15 -0
- data/lib/puppet/settings/priority_setting.rb +5 -4
- data/lib/puppet/ssl.rb +10 -6
- data/lib/puppet/ssl/base.rb +3 -5
- data/lib/puppet/ssl/certificate.rb +0 -6
- data/lib/puppet/ssl/certificate_request.rb +1 -12
- data/lib/puppet/ssl/certificate_signer.rb +6 -0
- data/lib/puppet/ssl/oids.rb +3 -1
- data/lib/puppet/ssl/ssl_provider.rb +17 -0
- data/lib/puppet/ssl/state_machine.rb +3 -1
- data/lib/puppet/ssl/verifier.rb +2 -0
- data/lib/puppet/test/test_helper.rb +1 -3
- data/lib/puppet/transaction.rb +1 -7
- data/lib/puppet/transaction/report.rb +2 -4
- data/lib/puppet/type.rb +0 -76
- data/lib/puppet/type/file.rb +5 -7
- data/lib/puppet/type/file/checksum.rb +1 -1
- data/lib/puppet/type/file/source.rb +1 -1
- data/lib/puppet/type/filebucket.rb +3 -3
- data/lib/puppet/type/package.rb +5 -13
- data/lib/puppet/type/user.rb +1 -1
- data/lib/puppet/util/autoload.rb +1 -8
- data/lib/puppet/util/execution.rb +0 -11
- data/lib/puppet/util/http_proxy.rb +2 -215
- data/lib/puppet/util/monkey_patches.rb +0 -46
- data/lib/puppet/util/posix.rb +54 -5
- data/lib/puppet/util/rdoc.rb +0 -7
- data/lib/puppet/util/retry_action.rb +1 -1
- data/lib/puppet/util/rubygems.rb +5 -1
- data/lib/puppet/util/run_mode.rb +9 -1
- data/lib/puppet/util/windows.rb +3 -8
- data/lib/puppet/util/windows/daemon.rb +360 -0
- data/lib/puppet/util/windows/error.rb +1 -0
- data/lib/puppet/util/windows/eventlog.rb +4 -9
- data/lib/puppet/util/windows/file.rb +8 -242
- data/lib/puppet/util/windows/monkey_patches/process.rb +414 -0
- data/lib/puppet/util/windows/process.rb +4 -226
- data/lib/puppet/util/windows/service.rb +9 -460
- data/lib/puppet/util/windows/string.rb +12 -13
- data/lib/puppet/util/yaml.rb +0 -22
- data/lib/puppet/vendor/require_vendored.rb +0 -1
- data/lib/puppet/version.rb +1 -1
- data/lib/puppet/x509.rb +5 -1
- data/lib/puppet/x509/cert_provider.rb +29 -1
- data/locales/puppet.pot +629 -1314
- data/man/man5/puppet.conf.5 +39 -99
- data/man/man8/puppet-agent.8 +2 -2
- data/man/man8/puppet-apply.8 +2 -2
- data/man/man8/puppet-catalog.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 +2 -2
- data/man/man8/puppet-doc.8 +1 -1
- data/man/man8/puppet-epp.8 +1 -1
- data/man/man8/puppet-facts.8 +58 -9
- data/man/man8/puppet-filebucket.8 +6 -6
- data/man/man8/puppet-generate.8 +1 -1
- data/man/man8/puppet-help.8 +1 -1
- data/man/man8/puppet-lookup.8 +1 -1
- data/man/man8/puppet-module.8 +1 -58
- data/man/man8/puppet-node.8 +4 -1
- 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.8 +2 -2
- data/spec/fixtures/integration/application/agent/cached_deferred_catalog.json +91 -0
- data/spec/fixtures/unit/provider/service/smf/{svcs.out → svcs_instances.out} +0 -0
- data/spec/fixtures/unit/provider/user/aix/aix_passwd_file.out +4 -0
- data/spec/integration/application/agent_spec.rb +151 -14
- data/spec/integration/application/apply_spec.rb +20 -1
- data/spec/integration/application/filebucket_spec.rb +16 -16
- data/spec/integration/application/help_spec.rb +2 -0
- data/spec/integration/application/plugin_spec.rb +23 -1
- data/spec/integration/defaults_spec.rb +7 -10
- data/spec/integration/environments/setting_hooks_spec.rb +1 -1
- data/spec/integration/indirector/file_content/file_server_spec.rb +0 -2
- data/spec/integration/indirector/file_metadata/file_server_spec.rb +0 -2
- data/spec/integration/network/http_pool_spec.rb +3 -21
- data/spec/integration/parser/catalog_spec.rb +0 -38
- data/spec/integration/parser/node_spec.rb +0 -9
- data/spec/integration/parser/pcore_resource_spec.rb +0 -37
- 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 +5 -4
- data/spec/integration/util/windows/adsi_spec.rb +3 -1
- data/spec/integration/util/windows/monkey_patches/process_spec.rb +231 -0
- data/spec/integration/util/windows/registry_spec.rb +0 -10
- data/spec/integration/util/windows/security_spec.rb +1 -1
- data/spec/lib/puppet_spec/puppetserver.rb +1 -1
- data/spec/lib/puppet_spec/settings.rb +7 -1
- data/spec/spec_helper.rb +3 -4
- data/spec/unit/agent_spec.rb +8 -8
- data/spec/unit/application/agent_spec.rb +0 -1
- data/spec/unit/application/config_spec.rb +224 -4
- data/spec/unit/application/facts_spec.rb +35 -0
- data/spec/unit/application/filebucket_spec.rb +41 -41
- data/spec/unit/application/ssl_spec.rb +2 -2
- data/spec/unit/application_spec.rb +51 -9
- data/spec/unit/certificate_factory_spec.rb +1 -1
- data/spec/unit/configurer/downloader_spec.rb +6 -2
- data/spec/unit/configurer/plugin_handler_spec.rb +56 -18
- data/spec/unit/configurer_spec.rb +12 -9
- data/spec/unit/confine/feature_spec.rb +1 -1
- data/spec/unit/confine_spec.rb +8 -2
- data/spec/unit/context/trusted_information_spec.rb +2 -6
- data/spec/unit/defaults_spec.rb +26 -32
- data/spec/unit/environments_spec.rb +96 -22
- data/spec/unit/face/config_spec.rb +27 -32
- data/spec/unit/face/facts_spec.rb +4 -0
- data/spec/unit/face/node_spec.rb +14 -13
- data/spec/unit/face/plugin_spec.rb +73 -33
- data/spec/unit/file_bucket/file_spec.rb +1 -1
- data/spec/unit/file_serving/configuration/parser_spec.rb +22 -19
- data/spec/unit/file_serving/configuration_spec.rb +6 -12
- data/spec/unit/file_serving/metadata_spec.rb +3 -3
- data/spec/unit/file_serving/terminus_helper_spec.rb +11 -4
- data/spec/unit/forge/module_release_spec.rb +2 -7
- data/spec/unit/functions/camelcase_spec.rb +1 -1
- data/spec/unit/functions/capitalize_spec.rb +1 -1
- data/spec/unit/functions/downcase_spec.rb +1 -1
- data/spec/unit/functions/inline_epp_spec.rb +26 -1
- data/spec/unit/functions/upcase_spec.rb +1 -1
- data/spec/unit/http/client_spec.rb +7 -8
- data/spec/unit/{network/resolver_spec.rb → http/dns_spec.rb} +3 -3
- data/spec/unit/http/external_client_spec.rb +4 -4
- data/spec/unit/{network/http → http}/factory_spec.rb +5 -11
- data/spec/unit/{network/http/session_spec.rb → http/pool_entry_spec.rb} +3 -3
- data/spec/unit/{network/http → http}/pool_spec.rb +12 -17
- data/spec/unit/{util/http_proxy_spec.rb → http/proxy_spec.rb} +2 -69
- data/spec/unit/http/resolver_spec.rb +13 -13
- data/spec/unit/http/service/compiler_spec.rb +49 -62
- data/spec/unit/http/service/file_server_spec.rb +3 -3
- data/spec/unit/http/service/puppetserver_spec.rb +34 -4
- data/spec/unit/http/service_spec.rb +1 -2
- data/spec/unit/http/session_spec.rb +16 -14
- data/spec/unit/{network/http → http}/site_spec.rb +3 -3
- data/spec/unit/indirector/face_spec.rb +0 -1
- data/spec/unit/indirector/facts/facter_spec.rb +104 -1
- data/spec/unit/indirector/facts/json_spec.rb +255 -0
- data/spec/unit/indirector/file_bucket_file/file_spec.rb +5 -3
- data/spec/unit/indirector/file_bucket_file/selector_spec.rb +26 -8
- data/spec/unit/indirector/file_content/rest_spec.rb +0 -4
- data/spec/unit/indirector/file_metadata/rest_spec.rb +0 -4
- data/spec/unit/indirector/file_server_spec.rb +1 -15
- data/spec/unit/indirector/indirection_spec.rb +8 -12
- data/spec/unit/indirector/node/json_spec.rb +33 -0
- data/spec/{integration/indirector/report/yaml.rb → unit/indirector/report/json_spec.rb} +13 -24
- data/spec/unit/indirector/report/rest_spec.rb +2 -17
- data/spec/unit/indirector/report/yaml_spec.rb +72 -8
- data/spec/unit/indirector/request_spec.rb +0 -264
- data/spec/unit/indirector/rest_spec.rb +98 -752
- data/spec/unit/indirector_spec.rb +2 -2
- data/spec/unit/module_tool/applications/installer_spec.rb +66 -0
- data/spec/unit/network/authconfig_spec.rb +2 -132
- data/spec/unit/network/authorization_spec.rb +2 -55
- data/spec/unit/network/formats_spec.rb +45 -4
- data/spec/unit/network/http/api/indirected_routes_spec.rb +1 -101
- data/spec/unit/network/http/api/master/v3_spec.rb +28 -7
- data/spec/unit/network/http/api_spec.rb +10 -0
- data/spec/unit/network/http/connection_spec.rb +19 -41
- data/spec/unit/network/http/handler_spec.rb +0 -6
- data/spec/unit/network/http_pool_spec.rb +0 -4
- data/spec/unit/node/environment_spec.rb +33 -21
- data/spec/unit/node_spec.rb +2 -54
- data/spec/unit/parser/compiler_spec.rb +3 -19
- data/spec/unit/parser/functions/create_resources_spec.rb +2 -20
- data/spec/unit/parser/resource_spec.rb +14 -8
- 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 +4 -7
- data/spec/unit/pops/loaders/loaders_spec.rb +6 -21
- data/spec/unit/pops/parser/parse_application_spec.rb +4 -22
- data/spec/unit/pops/parser/parse_basic_expressions_spec.rb +0 -1
- data/spec/unit/pops/parser/parse_capabilities_spec.rb +8 -21
- data/spec/unit/pops/parser/parse_site_spec.rb +20 -24
- data/spec/unit/pops/resource/resource_type_impl_spec.rb +0 -71
- data/spec/unit/pops/serialization/to_from_hr_spec.rb +1 -1
- data/spec/unit/pops/types/type_calculator_spec.rb +6 -6
- data/spec/unit/pops/types/type_factory_spec.rb +1 -1
- data/spec/unit/pops/validator/validator_spec.rb +61 -46
- data/spec/unit/pops/visitor_spec.rb +1 -1
- data/spec/unit/property_spec.rb +1 -0
- data/spec/unit/provider/nameservice_spec.rb +66 -122
- data/spec/unit/provider/package/apt_spec.rb +4 -8
- data/spec/unit/provider/package/base_spec.rb +6 -5
- data/spec/unit/provider/package/dpkg_spec.rb +0 -48
- data/spec/unit/provider/package/gem_spec.rb +32 -0
- data/spec/unit/provider/package/pacman_spec.rb +18 -12
- 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 +3 -2
- data/spec/unit/provider/service/smf_spec.rb +401 -165
- data/spec/unit/provider/service/windows_spec.rb +0 -1
- 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/pw_spec.rb +2 -0
- data/spec/unit/provider/user/useradd_spec.rb +1 -0
- data/spec/unit/provider_spec.rb +6 -20
- data/spec/unit/puppet_pal_catalog_spec.rb +45 -0
- data/spec/unit/resource/type_collection_spec.rb +2 -22
- data/spec/unit/resource/type_spec.rb +1 -1
- data/spec/unit/resource_spec.rb +11 -66
- data/spec/unit/settings/http_extra_headers_spec.rb +2 -4
- data/spec/unit/settings/integer_setting_spec.rb +42 -0
- data/spec/unit/settings/port_setting_spec.rb +31 -0
- data/spec/unit/settings/priority_setting_spec.rb +4 -4
- data/spec/unit/settings_spec.rb +560 -228
- data/spec/unit/ssl/base_spec.rb +36 -4
- data/spec/unit/ssl/certificate_request_spec.rb +15 -45
- data/spec/unit/ssl/certificate_spec.rb +2 -11
- data/spec/unit/ssl/ssl_provider_spec.rb +14 -8
- data/spec/unit/ssl/state_machine_spec.rb +0 -1
- data/spec/unit/ssl/verifier_spec.rb +0 -21
- 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/report_spec.rb +0 -2
- data/spec/unit/transaction/resource_harness_spec.rb +2 -2
- data/spec/unit/transaction_spec.rb +57 -82
- data/spec/unit/type/file/checksum_spec.rb +6 -6
- data/spec/unit/type/file/content_spec.rb +1 -2
- data/spec/unit/type/file/ensure_spec.rb +1 -1
- data/spec/unit/type/file/mode_spec.rb +1 -1
- data/spec/unit/type/file/selinux_spec.rb +0 -2
- data/spec/unit/type/file/source_spec.rb +0 -1
- data/spec/unit/type/file_spec.rb +12 -12
- data/spec/unit/type/group_spec.rb +13 -6
- data/spec/unit/type/package_spec.rb +1 -1
- data/spec/unit/type/resources_spec.rb +7 -7
- data/spec/unit/type/service_spec.rb +1 -1
- data/spec/unit/type/tidy_spec.rb +0 -1
- data/spec/unit/type_spec.rb +22 -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 -4
- data/spec/unit/util/execution_spec.rb +15 -40
- 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/monkey_patches_spec.rb +0 -6
- 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 +21 -121
- 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/string_spec.rb +1 -3
- data/spec/unit/util/yaml_spec.rb +0 -54
- data/spec/unit/util_spec.rb +13 -24
- metadata +66 -226
- data/conf/auth.conf +0 -150
- data/lib/puppet/application/cert.rb +0 -76
- data/lib/puppet/application/key.rb +0 -4
- data/lib/puppet/application/man.rb +0 -4
- data/lib/puppet/application/status.rb +0 -4
- data/lib/puppet/face/key.rb +0 -16
- data/lib/puppet/face/man.rb +0 -145
- data/lib/puppet/face/module/build.rb +0 -14
- data/lib/puppet/face/module/generate.rb +0 -14
- data/lib/puppet/face/module/search.rb +0 -103
- data/lib/puppet/face/status.rb +0 -51
- data/lib/puppet/indirector/certificate/file.rb +0 -9
- data/lib/puppet/indirector/certificate/rest.rb +0 -18
- data/lib/puppet/indirector/certificate_request/file.rb +0 -9
- data/lib/puppet/indirector/certificate_request/memory.rb +0 -7
- data/lib/puppet/indirector/certificate_request/rest.rb +0 -11
- data/lib/puppet/indirector/file_content/http.rb +0 -22
- data/lib/puppet/indirector/key/file.rb +0 -46
- data/lib/puppet/indirector/key/memory.rb +0 -7
- data/lib/puppet/indirector/ssl_file.rb +0 -162
- data/lib/puppet/indirector/status.rb +0 -3
- data/lib/puppet/indirector/status/local.rb +0 -12
- data/lib/puppet/indirector/status/rest.rb +0 -27
- data/lib/puppet/module_tool/applications/searcher.rb +0 -29
- data/lib/puppet/network/auth_config_parser.rb +0 -90
- data/lib/puppet/network/authstore.rb +0 -283
- data/lib/puppet/network/http/api/master/v3/authorization.rb +0 -18
- data/lib/puppet/network/http/api/master/v3/environment.rb +0 -88
- data/lib/puppet/network/http/base_pool.rb +0 -36
- data/lib/puppet/network/http/compression.rb +0 -127
- data/lib/puppet/network/http/connection_adapter.rb +0 -184
- data/lib/puppet/network/http/nocache_pool.rb +0 -28
- data/lib/puppet/network/rest_controller.rb +0 -2
- data/lib/puppet/network/rights.rb +0 -210
- data/lib/puppet/parser/compiler/catalog_validator/env_relationship_validator.rb +0 -66
- data/lib/puppet/parser/compiler/catalog_validator/site_validator.rb +0 -22
- data/lib/puppet/parser/environment_compiler.rb +0 -202
- data/lib/puppet/pops/types/enumeration.rb +0 -16
- data/lib/puppet/resource/capability_finder.rb +0 -154
- data/lib/puppet/rest/errors.rb +0 -15
- data/lib/puppet/rest/response.rb +0 -35
- data/lib/puppet/rest/route.rb +0 -85
- data/lib/puppet/rest/routes.rb +0 -135
- data/lib/puppet/ssl/host.rb +0 -505
- data/lib/puppet/ssl/key.rb +0 -61
- data/lib/puppet/ssl/validator.rb +0 -61
- data/lib/puppet/ssl/validator/default_validator.rb +0 -209
- data/lib/puppet/ssl/validator/no_validator.rb +0 -22
- data/lib/puppet/ssl/verifier_adapter.rb +0 -58
- data/lib/puppet/status.rb +0 -40
- data/lib/puppet/util/connection.rb +0 -88
- data/lib/puppet/util/ssl.rb +0 -83
- data/lib/puppet/util/windows/api_types.rb +0 -309
- data/lib/puppet/util/windows/monkey_patches/dir.rb +0 -40
- data/lib/puppet/vendor/load_pathspec.rb +0 -1
- data/lib/puppet/vendor/pathspec/CHANGELOG.md +0 -2
- data/lib/puppet/vendor/pathspec/LICENSE +0 -201
- data/lib/puppet/vendor/pathspec/PUPPET_README.md +0 -6
- data/lib/puppet/vendor/pathspec/README.md +0 -53
- data/lib/puppet/vendor/pathspec/lib/pathspec.rb +0 -122
- data/lib/puppet/vendor/pathspec/lib/pathspec/gitignorespec.rb +0 -275
- data/lib/puppet/vendor/pathspec/lib/pathspec/regexspec.rb +0 -17
- data/lib/puppet/vendor/pathspec/lib/pathspec/spec.rb +0 -14
- data/man/man8/puppet-key.8 +0 -126
- data/man/man8/puppet-man.8 +0 -76
- data/man/man8/puppet-status.8 +0 -108
- data/spec/integration/application/config_spec.rb +0 -74
- data/spec/integration/network/authconfig_spec.rb +0 -256
- data/spec/integration/util/windows/monkey_patches/dir_spec.rb +0 -11
- data/spec/unit/application/man_spec.rb +0 -52
- data/spec/unit/capability_spec.rb +0 -414
- data/spec/unit/face/catalog_spec.rb +0 -6
- data/spec/unit/face/key_spec.rb +0 -9
- data/spec/unit/face/module/search_spec.rb +0 -231
- data/spec/unit/face/module_spec.rb +0 -3
- data/spec/unit/face/status_spec.rb +0 -9
- data/spec/unit/indirector/certificate/file_spec.rb +0 -14
- data/spec/unit/indirector/certificate/rest_spec.rb +0 -61
- data/spec/unit/indirector/certificate_request/file_spec.rb +0 -14
- data/spec/unit/indirector/certificate_request/rest_spec.rb +0 -25
- data/spec/unit/indirector/key/file_spec.rb +0 -79
- data/spec/unit/indirector/ssl_file_spec.rb +0 -305
- data/spec/unit/indirector/status/local_spec.rb +0 -10
- data/spec/unit/indirector/status/rest_spec.rb +0 -50
- data/spec/unit/module_tool/applications/searcher_spec.rb +0 -38
- data/spec/unit/network/auth_config_parser_spec.rb +0 -115
- data/spec/unit/network/authstore_spec.rb +0 -422
- data/spec/unit/network/http/api/master/v3/authorization_spec.rb +0 -57
- data/spec/unit/network/http/api/master/v3/environment_spec.rb +0 -185
- data/spec/unit/network/http/compression_spec.rb +0 -240
- data/spec/unit/network/http/nocache_pool_spec.rb +0 -64
- data/spec/unit/network/http_spec.rb +0 -9
- data/spec/unit/network/rights_spec.rb +0 -439
- data/spec/unit/parser/environment_compiler_spec.rb +0 -730
- data/spec/unit/pops/types/enumeration_spec.rb +0 -51
- data/spec/unit/resource/capability_finder_spec.rb +0 -143
- data/spec/unit/rest/route_spec.rb +0 -132
- data/spec/unit/ssl/host_spec.rb +0 -650
- data/spec/unit/ssl/key_spec.rb +0 -173
- data/spec/unit/ssl/validator_spec.rb +0 -278
- data/spec/unit/status_spec.rb +0 -45
- data/spec/unit/util/ssl_spec.rb +0 -91
@@ -1,7 +1,7 @@
|
|
1
1
|
.\" generated with Ronn/v0.7.3
|
2
2
|
.\" http://github.com/rtomayko/ronn/tree/0.7.3
|
3
3
|
.
|
4
|
-
.TH "PUPPET\-FILEBUCKET" "8" "
|
4
|
+
.TH "PUPPET\-FILEBUCKET" "8" "January 2021" "Puppet, Inc." "Puppet manual"
|
5
5
|
.
|
6
6
|
.SH "NAME"
|
7
7
|
\fBpuppet\-filebucket\fR \- Store and retrieve files in a filebucket
|
@@ -16,13 +16,13 @@ puppet filebucket \fImode\fR [\-h|\-\-help] [\-V|\-\-version] [\-d|\-\-debug] [\
|
|
16
16
|
Puppet filebucket can operate in three modes, with only one mode per call:
|
17
17
|
.
|
18
18
|
.P
|
19
|
-
backup: Send one or more files to the specified file bucket\. Each sent file is printed with its resulting
|
19
|
+
backup: Send one or more files to the specified file bucket\. Each sent file is printed with its resulting sha256 sum\.
|
20
20
|
.
|
21
21
|
.P
|
22
|
-
get: Return the text associated with an
|
22
|
+
get: Return the text associated with an sha256 sum\. The text is printed to stdout, and only one file can be retrieved at a time\.
|
23
23
|
.
|
24
24
|
.P
|
25
|
-
restore: Given a file path and an
|
25
|
+
restore: Given a file path and an sha256 sum, store the content associated with the sum into the specified file path\. You can specify an entirely new path to this argument; you are not restricted to restoring the content to its original location\.
|
26
26
|
.
|
27
27
|
.P
|
28
28
|
diff: Print a diff in unified format between two checksums in the filebucket or between a checksum and its matching file\.
|
@@ -152,8 +152,8 @@ $ puppet filebucket \-b /tmp/TestBucket backup /tmp/TestFile2
|
|
152
152
|
$ puppet filebucket \-b /tmp/TestBucket list
|
153
153
|
d41d8cd98f00b204e9800998ecf8427e 2015\-05\-11 09:33:22 /tmp/TestFile2
|
154
154
|
|
155
|
-
## From a Puppet
|
156
|
-
$ puppet filebucket \-b $(puppet config print bucketdir \-\-section
|
155
|
+
## From a Puppet Server, list files in the server bucketdir
|
156
|
+
$ puppet filebucket \-b $(puppet config print bucketdir \-\-section server) list
|
157
157
|
d43a6ecaa892a1962398ac9170ea9bf2 2015\-05\-11 09:27:56 /tmp/TestFile
|
158
158
|
7ae322f5791217e031dc60188f4521ef 2015\-05\-11 09:52:15 /tmp/TestFile
|
159
159
|
.
|
data/man/man8/puppet-generate.8
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
.\" generated with Ronn/v0.7.3
|
2
2
|
.\" http://github.com/rtomayko/ronn/tree/0.7.3
|
3
3
|
.
|
4
|
-
.TH "PUPPET\-GENERATE" "8" "
|
4
|
+
.TH "PUPPET\-GENERATE" "8" "January 2021" "Puppet, Inc." "Puppet manual"
|
5
5
|
.
|
6
6
|
.SH "NAME"
|
7
7
|
\fBpuppet\-generate\fR \- Generates Puppet code from Ruby definitions\.
|
data/man/man8/puppet-help.8
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
.\" generated with Ronn/v0.7.3
|
2
2
|
.\" http://github.com/rtomayko/ronn/tree/0.7.3
|
3
3
|
.
|
4
|
-
.TH "PUPPET\-HELP" "8" "
|
4
|
+
.TH "PUPPET\-HELP" "8" "January 2021" "Puppet, Inc." "Puppet manual"
|
5
5
|
.
|
6
6
|
.SH "NAME"
|
7
7
|
\fBpuppet\-help\fR \- Display Puppet help\.
|
data/man/man8/puppet-lookup.8
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
.\" generated with Ronn/v0.7.3
|
2
2
|
.\" http://github.com/rtomayko/ronn/tree/0.7.3
|
3
3
|
.
|
4
|
-
.TH "PUPPET\-LOOKUP" "8" "
|
4
|
+
.TH "PUPPET\-LOOKUP" "8" "January 2021" "Puppet, Inc." "Puppet manual"
|
5
5
|
.
|
6
6
|
.SH "NAME"
|
7
7
|
\fBpuppet\-lookup\fR \- Interactive Hiera lookup
|
data/man/man8/puppet-module.8
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
.\" generated with Ronn/v0.7.3
|
2
2
|
.\" http://github.com/rtomayko/ronn/tree/0.7.3
|
3
3
|
.
|
4
|
-
.TH "PUPPET\-MODULE" "8" "
|
4
|
+
.TH "PUPPET\-MODULE" "8" "January 2021" "Puppet, Inc." "Puppet manual"
|
5
5
|
.
|
6
6
|
.SH "NAME"
|
7
7
|
\fBpuppet\-module\fR \- Creates, installs and searches for modules on the Puppet Forge\.
|
@@ -53,19 +53,6 @@ Setting a global value for \fBmodulepath\fR in puppet\.conf is not allowed (but
|
|
53
53
|
.SH "ACTIONS"
|
54
54
|
.
|
55
55
|
.TP
|
56
|
-
\fBbuild\fR \- Build a module release package\.
|
57
|
-
\fBSYNOPSIS\fR
|
58
|
-
.
|
59
|
-
.IP
|
60
|
-
puppet module build
|
61
|
-
.
|
62
|
-
.IP
|
63
|
-
\fBDESCRIPTION\fR
|
64
|
-
.
|
65
|
-
.IP
|
66
|
-
This action has been replaced by Puppet Development Kit\. For more information visit https://puppet\.com/docs/pdk/latest/pdk\.html\.
|
67
|
-
.
|
68
|
-
.TP
|
69
56
|
\fBchanges\fR \- Show modified files of an installed module\.
|
70
57
|
\fBSYNOPSIS\fR
|
71
58
|
.
|
@@ -85,19 +72,6 @@ Shows any files in a module that have been modified since it was installed\. Thi
|
|
85
72
|
Array of strings representing paths of modified files\.
|
86
73
|
.
|
87
74
|
.TP
|
88
|
-
\fBgenerate\fR \- Generate boilerplate for a new module\.
|
89
|
-
\fBSYNOPSIS\fR
|
90
|
-
.
|
91
|
-
.IP
|
92
|
-
puppet module generate
|
93
|
-
.
|
94
|
-
.IP
|
95
|
-
\fBDESCRIPTION\fR
|
96
|
-
.
|
97
|
-
.IP
|
98
|
-
This action has been replaced by Puppet Development Kit\. For more information visit https://puppet\.com/docs/pdk/latest/pdk\.html\.
|
99
|
-
.
|
100
|
-
.TP
|
101
75
|
\fBinstall\fR \- Install a module from the Puppet Forge or a release archive\.
|
102
76
|
\fBSYNOPSIS\fR
|
103
77
|
.
|
@@ -160,28 +134,6 @@ The output of this action includes information from the module\'s metadata, incl
|
|
160
134
|
hash of paths to module objects
|
161
135
|
.
|
162
136
|
.TP
|
163
|
-
\fBsearch\fR \- Search the Puppet Forge for a module\.
|
164
|
-
\fBSYNOPSIS\fR
|
165
|
-
.
|
166
|
-
.IP
|
167
|
-
puppet module search \fIsearch_term\fR
|
168
|
-
.
|
169
|
-
.IP
|
170
|
-
\fBDESCRIPTION\fR
|
171
|
-
.
|
172
|
-
.IP
|
173
|
-
This action has been deprecated\. Please use the Puppet Forge to search for modules\.
|
174
|
-
.
|
175
|
-
.IP
|
176
|
-
Searches a repository for modules whose names, descriptions, or keywords match the provided search term\.
|
177
|
-
.
|
178
|
-
.IP
|
179
|
-
\fBRETURNS\fR
|
180
|
-
.
|
181
|
-
.IP
|
182
|
-
Array of module metadata hashes
|
183
|
-
.
|
184
|
-
.TP
|
185
137
|
\fBuninstall\fR \- Uninstall a puppet module\.
|
186
138
|
\fBSYNOPSIS\fR
|
187
139
|
.
|
@@ -322,15 +274,6 @@ List installed modules from a specified modulepath:
|
|
322
274
|
$ puppet module list \-\-modulepath /opt/puppetlabs/puppet/modules /opt/puppetlabs/puppet/modules (no modules installed)
|
323
275
|
.
|
324
276
|
.P
|
325
|
-
\fBsearch\fR
|
326
|
-
.
|
327
|
-
.P
|
328
|
-
Search the Puppet Forge for a module:
|
329
|
-
.
|
330
|
-
.P
|
331
|
-
$ puppet module search puppetlabs NAME DESCRIPTION AUTHOR KEYWORDS bacula This is a generic Apache module @puppetlabs backups
|
332
|
-
.
|
333
|
-
.P
|
334
277
|
\fBuninstall\fR
|
335
278
|
.
|
336
279
|
.P
|
data/man/man8/puppet-node.8
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
.\" generated with Ronn/v0.7.3
|
2
2
|
.\" http://github.com/rtomayko/ronn/tree/0.7.3
|
3
3
|
.
|
4
|
-
.TH "PUPPET\-NODE" "8" "
|
4
|
+
.TH "PUPPET\-NODE" "8" "January 2021" "Puppet, Inc." "Puppet manual"
|
5
5
|
.
|
6
6
|
.SH "NAME"
|
7
7
|
\fBpuppet\-node\fR \- View and manage node definitions\.
|
@@ -137,6 +137,9 @@ This subcommand is an indirector face, which exposes \fBfind\fR, \fBsearch\fR, \
|
|
137
137
|
\fBexec\fR
|
138
138
|
.
|
139
139
|
.IP "\(bu" 4
|
140
|
+
\fBjson\fR
|
141
|
+
.
|
142
|
+
.IP "\(bu" 4
|
140
143
|
\fBmemory\fR
|
141
144
|
.
|
142
145
|
.IP "\(bu" 4
|
data/man/man8/puppet-parser.8
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
.\" generated with Ronn/v0.7.3
|
2
2
|
.\" http://github.com/rtomayko/ronn/tree/0.7.3
|
3
3
|
.
|
4
|
-
.TH "PUPPET\-PARSER" "8" "
|
4
|
+
.TH "PUPPET\-PARSER" "8" "January 2021" "Puppet, Inc." "Puppet manual"
|
5
5
|
.
|
6
6
|
.SH "NAME"
|
7
7
|
\fBpuppet\-parser\fR \- Interact directly with the parser\.
|
data/man/man8/puppet-plugin.8
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
.\" generated with Ronn/v0.7.3
|
2
2
|
.\" http://github.com/rtomayko/ronn/tree/0.7.3
|
3
3
|
.
|
4
|
-
.TH "PUPPET\-PLUGIN" "8" "
|
4
|
+
.TH "PUPPET\-PLUGIN" "8" "January 2021" "Puppet, Inc." "Puppet manual"
|
5
5
|
.
|
6
6
|
.SH "NAME"
|
7
7
|
\fBpuppet\-plugin\fR \- Interact with the Puppet plugin system\.
|
data/man/man8/puppet-report.8
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
.\" generated with Ronn/v0.7.3
|
2
2
|
.\" http://github.com/rtomayko/ronn/tree/0.7.3
|
3
3
|
.
|
4
|
-
.TH "PUPPET\-REPORT" "8" "
|
4
|
+
.TH "PUPPET\-REPORT" "8" "January 2021" "Puppet, Inc." "Puppet manual"
|
5
5
|
.
|
6
6
|
.SH "NAME"
|
7
7
|
\fBpuppet\-report\fR \- Create, display, and submit reports\.
|
@@ -107,6 +107,9 @@ API example:report = Puppet::Face[:catalog, \'0\.0\.1\']\.apply Puppet::Face[:re
|
|
107
107
|
This subcommand is an indirector face, which exposes \fBfind\fR, \fBsearch\fR, \fBsave\fR, and \fBdestroy\fR actions for an indirected subsystem of Puppet\. Valid termini for this face include:
|
108
108
|
.
|
109
109
|
.IP "\(bu" 4
|
110
|
+
\fBjson\fR
|
111
|
+
.
|
112
|
+
.IP "\(bu" 4
|
110
113
|
\fBmsgpack\fR
|
111
114
|
.
|
112
115
|
.IP "\(bu" 4
|
data/man/man8/puppet-resource.8
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
.\" generated with Ronn/v0.7.3
|
2
2
|
.\" http://github.com/rtomayko/ronn/tree/0.7.3
|
3
3
|
.
|
4
|
-
.TH "PUPPET\-RESOURCE" "8" "
|
4
|
+
.TH "PUPPET\-RESOURCE" "8" "January 2021" "Puppet, Inc." "Puppet manual"
|
5
5
|
.
|
6
6
|
.SH "NAME"
|
7
7
|
\fBpuppet\-resource\fR \- The resource abstraction layer shell
|
data/man/man8/puppet-script.8
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
.\" generated with Ronn/v0.7.3
|
2
2
|
.\" http://github.com/rtomayko/ronn/tree/0.7.3
|
3
3
|
.
|
4
|
-
.TH "PUPPET\-SCRIPT" "8" "
|
4
|
+
.TH "PUPPET\-SCRIPT" "8" "January 2021" "Puppet, Inc." "Puppet manual"
|
5
5
|
.
|
6
6
|
.SH "NAME"
|
7
7
|
\fBpuppet\-script\fR \- Run a puppet manifests as a script without compiling a catalog
|
@@ -34,7 +34,7 @@ Print this help message
|
|
34
34
|
.
|
35
35
|
.TP
|
36
36
|
\-\-logdest
|
37
|
-
Where to send log messages\. Choose between \'syslog\' (the POSIX syslog service), \'eventlog\' (the Windows Event Log), \'console\', or the path to a log file\. Defaults to \'console\'\.
|
37
|
+
Where to send log messages\. Choose between \'syslog\' (the POSIX syslog service), \'eventlog\' (the Windows Event Log), \'console\', or the path to a log file\. Defaults to \'console\'\. Multiple destinations can be set using a comma separated list (eg: \fB/path/file1,console,/path/file2\fR)"
|
38
38
|
.
|
39
39
|
.IP
|
40
40
|
A path ending with \'\.json\' will receive structured output in JSON format\. The log file will not have an ending \']\' automatically written to it due to the appending nature of logging\. It must be appended manually to make the content valid JSON\.
|
data/man/man8/puppet-ssl.8
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
.\" generated with Ronn/v0.7.3
|
2
2
|
.\" http://github.com/rtomayko/ronn/tree/0.7.3
|
3
3
|
.
|
4
|
-
.TH "PUPPET\-SSL" "8" "
|
4
|
+
.TH "PUPPET\-SSL" "8" "January 2021" "Puppet, Inc." "Puppet manual"
|
5
5
|
.
|
6
6
|
.SH "NAME"
|
7
7
|
\fBpuppet\-ssl\fR \- Manage SSL keys and certificates for puppet SSL clients
|
data/man/man8/puppet.8
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
.\" generated with Ronn/v0.7.3
|
2
2
|
.\" http://github.com/rtomayko/ronn/tree/0.7.3
|
3
3
|
.
|
4
|
-
.TH "PUPPET" "8" "
|
4
|
+
.TH "PUPPET" "8" "January 2021" "Puppet, Inc." "Puppet manual"
|
5
5
|
.
|
6
6
|
.SH "NAME"
|
7
7
|
\fBpuppet\fR
|
@@ -25,4 +25,4 @@ Specialized:
|
|
25
25
|
catalog Compile, save, view, and convert catalogs\. describe Display help about resource types device Manage remote network devices doc Generate Puppet references epp Interact directly with the EPP template parser/renderer\. facts Retrieve and store facts\. filebucket Store and retrieve files in a filebucket generate Generates Puppet code from Ruby definitions\. node View and manage node definitions\. parser Interact directly with the parser\. plugin Interact with the Puppet plugin system\. script Run a puppet manifests as a script without compiling a catalog ssl Manage SSL keys and certificates for puppet SSL clients
|
26
26
|
.
|
27
27
|
.P
|
28
|
-
See \'puppet help \fIsubcommand\fR \fIaction\fR\' for help on a specific subcommand action\. See \'puppet help \fIsubcommand\fR\' for help on a specific subcommand\. Puppet
|
28
|
+
See \'puppet help \fIsubcommand\fR \fIaction\fR\' for help on a specific subcommand action\. See \'puppet help \fIsubcommand\fR\' for help on a specific subcommand\. Puppet v7\.3\.0
|
@@ -0,0 +1,91 @@
|
|
1
|
+
{
|
2
|
+
"tags": [
|
3
|
+
"settings"
|
4
|
+
],
|
5
|
+
"name": "127.0.0.1",
|
6
|
+
"version": 1607629733,
|
7
|
+
"code_id": null,
|
8
|
+
"catalog_uuid": "afc8472a-306b-4b24-b060-e956dffb79b8",
|
9
|
+
"catalog_format": 1,
|
10
|
+
"environment": "production",
|
11
|
+
"resources": [
|
12
|
+
{
|
13
|
+
"type": "Stage",
|
14
|
+
"title": "main",
|
15
|
+
"tags": [
|
16
|
+
"stage"
|
17
|
+
],
|
18
|
+
"exported": false,
|
19
|
+
"parameters": {
|
20
|
+
"name": "main"
|
21
|
+
}
|
22
|
+
},
|
23
|
+
{
|
24
|
+
"type": "Class",
|
25
|
+
"title": "Settings",
|
26
|
+
"tags": [
|
27
|
+
"class",
|
28
|
+
"settings"
|
29
|
+
],
|
30
|
+
"exported": false
|
31
|
+
},
|
32
|
+
{
|
33
|
+
"type": "Class",
|
34
|
+
"title": "main",
|
35
|
+
"tags": [
|
36
|
+
"class"
|
37
|
+
],
|
38
|
+
"exported": false,
|
39
|
+
"parameters": {
|
40
|
+
"name": "main"
|
41
|
+
}
|
42
|
+
},
|
43
|
+
{
|
44
|
+
"type": "Notify",
|
45
|
+
"title": "deferred",
|
46
|
+
"tags": [
|
47
|
+
"notify",
|
48
|
+
"deferred",
|
49
|
+
"class"
|
50
|
+
],
|
51
|
+
"file": "",
|
52
|
+
"line": 1,
|
53
|
+
"exported": false,
|
54
|
+
"parameters": {
|
55
|
+
"message": {
|
56
|
+
"__ptype": "Deferred",
|
57
|
+
"name": "new",
|
58
|
+
"arguments": [
|
59
|
+
{
|
60
|
+
"__ptype": "Pcore::StringType"
|
61
|
+
},
|
62
|
+
{
|
63
|
+
"__ptype": "Deferred",
|
64
|
+
"name": "binary_file",
|
65
|
+
"arguments": [
|
66
|
+
"__SOURCE_PATH__"
|
67
|
+
]
|
68
|
+
}
|
69
|
+
]
|
70
|
+
}
|
71
|
+
}
|
72
|
+
}
|
73
|
+
],
|
74
|
+
"edges": [
|
75
|
+
{
|
76
|
+
"source": "Stage[main]",
|
77
|
+
"target": "Class[Settings]"
|
78
|
+
},
|
79
|
+
{
|
80
|
+
"source": "Stage[main]",
|
81
|
+
"target": "Class[main]"
|
82
|
+
},
|
83
|
+
{
|
84
|
+
"source": "Class[main]",
|
85
|
+
"target": "Notify[deferred]"
|
86
|
+
}
|
87
|
+
],
|
88
|
+
"classes": [
|
89
|
+
"settings"
|
90
|
+
]
|
91
|
+
}
|
File without changes
|
@@ -25,7 +25,7 @@ describe "puppet agent", unless: Puppet::Util::Platform.jruby? do
|
|
25
25
|
agent.command_line.args << '--test'
|
26
26
|
agent.run
|
27
27
|
}.to exit_with(0)
|
28
|
-
.and output(%r{HTTP GET https://127.0.0.1:#{port}/status/v1/simple/
|
28
|
+
.and output(%r{HTTP GET https://127.0.0.1:#{port}/status/v1/simple/server returned 200 OK}).to_stdout
|
29
29
|
end
|
30
30
|
end
|
31
31
|
|
@@ -39,10 +39,9 @@ describe "puppet agent", unless: Puppet::Util::Platform.jruby? do
|
|
39
39
|
agent.run
|
40
40
|
}.to exit_with(0)
|
41
41
|
.and output(%r{Notice: Applied catalog}).to_stdout
|
42
|
-
.and output(%r{Unable to connect to server from server_list setting: Request to https://puppet.example.com:#{port}/status/v1/simple/
|
42
|
+
.and output(%r{Unable to connect to server from server_list setting: Request to https://puppet.example.com:#{port}/status/v1/simple/server failed}).to_stderr
|
43
43
|
|
44
44
|
report = Puppet::Transaction::Report.convert_from(:yaml, File.read(Puppet[:lastrunreport]))
|
45
|
-
expect(report.master_used).to eq("127.0.0.1:#{port}")
|
46
45
|
expect(report.server_used).to eq("127.0.0.1:#{port}")
|
47
46
|
end
|
48
47
|
end
|
@@ -75,7 +74,6 @@ describe "puppet agent", unless: Puppet::Util::Platform.jruby? do
|
|
75
74
|
end
|
76
75
|
|
77
76
|
report = Puppet::Transaction::Report.convert_from(:yaml, File.read(Puppet[:lastrunreport]))
|
78
|
-
expect(report.master_used).to be_nil
|
79
77
|
expect(report.server_used).to be_nil
|
80
78
|
end
|
81
79
|
|
@@ -93,17 +91,16 @@ describe "puppet agent", unless: Puppet::Util::Platform.jruby? do
|
|
93
91
|
.and output(%r{Debug: Resolved service 'puppet' to https://127.0.0.1:#{port}/puppet/v3}).to_stdout
|
94
92
|
|
95
93
|
report = Puppet::Transaction::Report.convert_from(:yaml, File.read(Puppet[:lastrunreport]))
|
96
|
-
expect(report.master_used).to eq("127.0.0.1:#{port}")
|
97
94
|
expect(report.server_used).to eq("127.0.0.1:#{port}")
|
98
95
|
end
|
99
96
|
end
|
100
97
|
end
|
101
98
|
|
102
99
|
context 'rich data' do
|
103
|
-
it "
|
100
|
+
it "calls a deferred 4x function" do
|
104
101
|
catalog_handler = -> (req, res) {
|
105
102
|
catalog = compile_to_catalog(<<-MANIFEST, node)
|
106
|
-
notify { '
|
103
|
+
notify { 'deferred4x':
|
107
104
|
message => Deferred('join', [[1,2,3], ':'])
|
108
105
|
}
|
109
106
|
MANIFEST
|
@@ -118,7 +115,66 @@ describe "puppet agent", unless: Puppet::Util::Platform.jruby? do
|
|
118
115
|
agent.command_line.args << '--test'
|
119
116
|
agent.run
|
120
117
|
}.to exit_with(2)
|
121
|
-
.and output(%r{Notice: /Stage\[main\]/Main/Notify\[
|
118
|
+
.and output(%r{Notice: /Stage\[main\]/Main/Notify\[deferred4x\]/message: defined 'message' as '1:2:3'}).to_stdout
|
119
|
+
end
|
120
|
+
end
|
121
|
+
|
122
|
+
it "calls a deferred 3x function" do
|
123
|
+
catalog_handler = -> (req, res) {
|
124
|
+
catalog = compile_to_catalog(<<-MANIFEST, node)
|
125
|
+
notify { 'deferred3x':
|
126
|
+
message => Deferred('sprintf', ['%s', 'I am deferred'])
|
127
|
+
}
|
128
|
+
MANIFEST
|
129
|
+
|
130
|
+
res.body = formatter.render(catalog)
|
131
|
+
res['Content-Type'] = formatter.mime
|
132
|
+
}
|
133
|
+
|
134
|
+
server.start_server(mounts: {catalog: catalog_handler}) do |port|
|
135
|
+
Puppet[:serverport] = port
|
136
|
+
expect {
|
137
|
+
agent.command_line.args << '--test'
|
138
|
+
agent.run
|
139
|
+
}.to exit_with(2)
|
140
|
+
.and output(%r{Notice: /Stage\[main\]/Main/Notify\[deferred3x\]/message: defined 'message' as 'I am deferred'}).to_stdout
|
141
|
+
end
|
142
|
+
end
|
143
|
+
|
144
|
+
it "re-evaluates a deferred function in a cached catalog" do
|
145
|
+
Puppet[:report] = false
|
146
|
+
Puppet[:use_cached_catalog] = true
|
147
|
+
Puppet[:usecacheonfailure] = false
|
148
|
+
|
149
|
+
catalog_dir = File.join(Puppet[:client_datadir], 'catalog')
|
150
|
+
Puppet::FileSystem.mkpath(catalog_dir)
|
151
|
+
cached_catalog_path = "#{File.join(catalog_dir, Puppet[:certname])}.json"
|
152
|
+
|
153
|
+
# our catalog contains a deferred function that calls `binary_file`
|
154
|
+
# to read `source`. The function returns a Binary object, whose
|
155
|
+
# base64 value is printed to stdout
|
156
|
+
source = tmpfile('deferred_source')
|
157
|
+
catalog = File.read(my_fixture('cached_deferred_catalog.json'))
|
158
|
+
catalog.gsub!('__SOURCE_PATH__', source)
|
159
|
+
File.write(cached_catalog_path, catalog)
|
160
|
+
|
161
|
+
# verify we get a different result each time the deferred function
|
162
|
+
# is evaluated, and reads `source`.
|
163
|
+
{
|
164
|
+
'1234' => 'MTIzNA==',
|
165
|
+
'5678' => 'NTY3OA=='
|
166
|
+
}.each_pair do |content, base64|
|
167
|
+
File.write(source, content)
|
168
|
+
|
169
|
+
expect {
|
170
|
+
agent.command_line.args << '-t'
|
171
|
+
agent.run
|
172
|
+
|
173
|
+
}.to exit_with(2)
|
174
|
+
.and output(/Notice: #{base64}/).to_stdout
|
175
|
+
|
176
|
+
# reset state so we can run again
|
177
|
+
Puppet::Application.clear!
|
122
178
|
end
|
123
179
|
end
|
124
180
|
|
@@ -249,7 +305,7 @@ describe "puppet agent", unless: Puppet::Util::Platform.jruby? do
|
|
249
305
|
agent.command_line.args << '--test'
|
250
306
|
agent.run
|
251
307
|
}.to exit_with(2)
|
252
|
-
.and output(/content changed '{
|
308
|
+
.and output(/content changed '{sha256}e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855' to '{sha256}3bef83ad320b471d8e3a03c9b9f150749eea610fe266560395d3195cfbd8e6b8'/).to_stdout
|
253
309
|
|
254
310
|
# verify puppet restored binary content
|
255
311
|
expect(File.binread(path)).to eq(binary_content)
|
@@ -417,7 +473,7 @@ describe "puppet agent", unless: Puppet::Util::Platform.jruby? do
|
|
417
473
|
path = Puppet[:agent_catalog_run_lockfile]
|
418
474
|
|
419
475
|
th = Thread.new {
|
420
|
-
%x{ruby -e "$0 = 'puppet'; File.write('#{path}', Process.pid); sleep(
|
476
|
+
%x{ruby -e "$0 = 'puppet'; File.write('#{path}', Process.pid); sleep(20)"}
|
421
477
|
}
|
422
478
|
|
423
479
|
until File.exists?(path) && File.size(path) > 0 do
|
@@ -434,12 +490,23 @@ describe "puppet agent", unless: Puppet::Util::Platform.jruby? do
|
|
434
490
|
|
435
491
|
it "waits for other agent run to finish before starting" do
|
436
492
|
server.start_server do |port|
|
493
|
+
script = tmpfile('wait_for_log_entry')
|
494
|
+
logdest = tmpfile('agent_log')
|
437
495
|
path = Puppet[:agent_catalog_run_lockfile]
|
438
496
|
Puppet[:serverport] = port
|
439
497
|
Puppet[:waitforlock] = 1
|
440
498
|
|
441
499
|
th = Thread.new {
|
442
|
-
|
500
|
+
File.write(script, <<~SCRIPT)
|
501
|
+
$0 = 'puppet'
|
502
|
+
# lock pidfile
|
503
|
+
File.write('#{path}', Process.pid)
|
504
|
+
# wait for foreground agent to fail once
|
505
|
+
until File.exists?("#{logdest}") && File.readlines("#{logdest}").grep(/Will try again/).any? do
|
506
|
+
sleep 0.1
|
507
|
+
end
|
508
|
+
SCRIPT
|
509
|
+
%x{ruby '#{script}'}
|
443
510
|
}
|
444
511
|
|
445
512
|
until File.exists?(path) && File.size(path) > 0 do
|
@@ -447,9 +514,14 @@ describe "puppet agent", unless: Puppet::Util::Platform.jruby? do
|
|
447
514
|
end
|
448
515
|
|
449
516
|
expect {
|
450
|
-
agent.command_line.args << '--test'
|
517
|
+
agent.command_line.args << '--test' << '--logdest' << logdest << '--logdest' << 'console'
|
451
518
|
agent.run
|
452
|
-
}.to exit_with(0)
|
519
|
+
}.to exit_with(0)
|
520
|
+
.and output(a_string_matching(
|
521
|
+
/Info: Will try again in #{Puppet[:waitforlock]} seconds/
|
522
|
+
).and matching(
|
523
|
+
/Applied catalog/
|
524
|
+
)).to_stdout
|
453
525
|
|
454
526
|
th.kill # kill thread so we don't wait too much
|
455
527
|
end
|
@@ -461,7 +533,7 @@ describe "puppet agent", unless: Puppet::Util::Platform.jruby? do
|
|
461
533
|
Puppet[:maxwaitforlock] = 0
|
462
534
|
|
463
535
|
th = Thread.new {
|
464
|
-
%x{ruby -e "$0 = 'puppet'; File.write('#{path}', Process.pid); sleep(
|
536
|
+
%x{ruby -e "$0 = 'puppet'; File.write('#{path}', Process.pid); sleep(20)"}
|
465
537
|
}
|
466
538
|
|
467
539
|
until File.exists?(path) && File.size(path) > 0 do
|
@@ -476,4 +548,69 @@ describe "puppet agent", unless: Puppet::Util::Platform.jruby? do
|
|
476
548
|
th.kill # kill thread so we don't wait too much
|
477
549
|
end
|
478
550
|
end
|
551
|
+
|
552
|
+
context 'cached catalogs' do
|
553
|
+
it 'falls back to a cached catalog' do
|
554
|
+
catalog_handler = -> (req, res) {
|
555
|
+
catalog = compile_to_catalog(<<-MANIFEST, node)
|
556
|
+
notify { 'a message': }
|
557
|
+
MANIFEST
|
558
|
+
|
559
|
+
res.body = formatter.render(catalog)
|
560
|
+
res['Content-Type'] = formatter.mime
|
561
|
+
}
|
562
|
+
|
563
|
+
server.start_server(mounts: {catalog: catalog_handler}) do |port|
|
564
|
+
Puppet[:serverport] = port
|
565
|
+
expect {
|
566
|
+
agent.command_line.args << '--test'
|
567
|
+
agent.run
|
568
|
+
}.to exit_with(2)
|
569
|
+
.and output(%r{Caching catalog for #{Puppet[:certname]}}).to_stdout
|
570
|
+
end
|
571
|
+
|
572
|
+
# reset state so we can run again
|
573
|
+
Puppet::Application.clear!
|
574
|
+
|
575
|
+
# --test above turns off `usecacheonfailure` so re-enable here
|
576
|
+
Puppet[:usecacheonfailure] = true
|
577
|
+
|
578
|
+
# run agent without server
|
579
|
+
expect {
|
580
|
+
agent.command_line.args << '--no-daemonize' << '--onetime' << '--server' << '127.0.0.1'
|
581
|
+
agent.run
|
582
|
+
}.to exit_with(2)
|
583
|
+
.and output(a_string_matching(
|
584
|
+
/Using cached catalog from environment 'production'/
|
585
|
+
).and matching(
|
586
|
+
/Notify\[a message\]\/message:/
|
587
|
+
)).to_stdout
|
588
|
+
.and output(/the agent run will continue/).to_stderr
|
589
|
+
end
|
590
|
+
|
591
|
+
it 'preserves the old cached catalog if validation fails with the old one' do
|
592
|
+
catalog_handler = -> (req, res) {
|
593
|
+
catalog = compile_to_catalog(<<-MANIFEST, node)
|
594
|
+
exec { 'unqualified_command': }
|
595
|
+
MANIFEST
|
596
|
+
|
597
|
+
res.body = formatter.render(catalog)
|
598
|
+
res['Content-Type'] = formatter.mime
|
599
|
+
}
|
600
|
+
|
601
|
+
server.start_server(mounts: {catalog: catalog_handler}) do |port|
|
602
|
+
Puppet[:serverport] = port
|
603
|
+
expect {
|
604
|
+
agent.command_line.args << '--test'
|
605
|
+
agent.run
|
606
|
+
}.to exit_with(1)
|
607
|
+
.and output(/Using configured environment/).to_stdout
|
608
|
+
.and output(%r{Validation of Exec\[unqualified_command\] failed: 'unqualified_command' is not qualified and no path was specified}).to_stderr
|
609
|
+
end
|
610
|
+
|
611
|
+
# cached catalog should not be updated
|
612
|
+
cached_catalog = "#{File.join(Puppet[:client_datadir], 'catalog', Puppet[:certname])}.json"
|
613
|
+
expect(File).to_not be_exist(cached_catalog)
|
614
|
+
end
|
615
|
+
end
|
479
616
|
end
|