puppet 8.5.1-x64-mingw32 → 8.6.0-x64-mingw32
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/Gemfile.lock +23 -20
- data/ext/windows/service/daemon.rb +49 -55
- data/lib/hiera/scope.rb +3 -3
- data/lib/hiera_puppet.rb +1 -1
- data/lib/puppet/agent/disabler.rb +1 -1
- data/lib/puppet/application/agent.rb +2 -2
- data/lib/puppet/application/apply.rb +2 -2
- data/lib/puppet/application/describe.rb +6 -6
- data/lib/puppet/application/device.rb +99 -100
- data/lib/puppet/application/doc.rb +1 -1
- data/lib/puppet/application/face_base.rb +7 -7
- data/lib/puppet/application/filebucket.rb +1 -1
- data/lib/puppet/application/lookup.rb +5 -5
- data/lib/puppet/application/resource.rb +10 -3
- data/lib/puppet/application/ssl.rb +3 -3
- data/lib/puppet/application.rb +16 -18
- data/lib/puppet/coercion.rb +1 -1
- data/lib/puppet/configurer/downloader.rb +9 -4
- data/lib/puppet/configurer/fact_handler.rb +12 -13
- data/lib/puppet/configurer.rb +16 -18
- data/lib/puppet/confine/feature.rb +1 -1
- data/lib/puppet/confine/variable.rb +1 -1
- data/lib/puppet/confine.rb +2 -2
- data/lib/puppet/confine_collection.rb +1 -1
- data/lib/puppet/confiner.rb +2 -2
- data/lib/puppet/daemon.rb +3 -3
- data/lib/puppet/datatypes.rb +5 -6
- data/lib/puppet/defaults.rb +14 -8
- data/lib/puppet/environments.rb +3 -7
- data/lib/puppet/error.rb +3 -3
- data/lib/puppet/external/dot.rb +42 -34
- data/lib/puppet/face/catalog/select.rb +1 -1
- data/lib/puppet/face/epp.rb +7 -9
- data/lib/puppet/face/help.rb +12 -12
- data/lib/puppet/face/module/changes.rb +1 -3
- data/lib/puppet/face/module/list.rb +37 -37
- data/lib/puppet/face/node/clean.rb +1 -1
- data/lib/puppet/face/parser.rb +6 -8
- data/lib/puppet/face/report.rb +5 -7
- data/lib/puppet/facter_impl.rb +1 -1
- data/lib/puppet/feature/base.rb +9 -11
- data/lib/puppet/feature/pe_license.rb +1 -1
- data/lib/puppet/feature/ssh.rb +1 -1
- data/lib/puppet/feature/telnet.rb +3 -5
- data/lib/puppet/feature/zlib.rb +1 -1
- data/lib/puppet/ffi/windows/constants.rb +1 -1
- data/lib/puppet/ffi/windows/functions.rb +2 -2
- data/lib/puppet/ffi/windows/structs.rb +3 -3
- data/lib/puppet/file_bucket/dipper.rb +4 -4
- data/lib/puppet/file_bucket/file.rb +4 -4
- data/lib/puppet/file_serving/base.rb +5 -5
- data/lib/puppet/file_serving/configuration/parser.rb +9 -9
- data/lib/puppet/file_serving/configuration.rb +3 -3
- data/lib/puppet/file_serving/fileset.rb +13 -13
- data/lib/puppet/file_serving/http_metadata.rb +1 -1
- data/lib/puppet/file_serving/metadata.rb +13 -9
- data/lib/puppet/file_serving/mount/file.rb +6 -6
- data/lib/puppet/file_serving/mount/locales.rb +2 -4
- data/lib/puppet/file_serving/mount/pluginfacts.rb +2 -4
- data/lib/puppet/file_serving/mount/plugins.rb +2 -4
- data/lib/puppet/file_serving/mount.rb +1 -1
- data/lib/puppet/file_system/file_impl.rb +3 -3
- data/lib/puppet/file_system/memory_impl.rb +1 -1
- data/lib/puppet/file_system/path_pattern.rb +1 -1
- data/lib/puppet/file_system/uniquefile.rb +17 -16
- data/lib/puppet/file_system/windows.rb +26 -18
- data/lib/puppet/forge/cache.rb +2 -2
- data/lib/puppet/forge/errors.rb +1 -1
- data/lib/puppet/forge/repository.rb +2 -2
- data/lib/puppet/forge.rb +13 -19
- data/lib/puppet/functions/abs.rb +2 -2
- data/lib/puppet/functions/camelcase.rb +1 -1
- data/lib/puppet/functions/compare.rb +2 -2
- data/lib/puppet/functions/contain.rb +1 -1
- data/lib/puppet/functions/defined.rb +2 -2
- data/lib/puppet/functions/dig.rb +1 -1
- data/lib/puppet/functions/eyaml_lookup_key.rb +11 -13
- data/lib/puppet/functions/get.rb +1 -1
- data/lib/puppet/functions/hocon_data.rb +3 -5
- data/lib/puppet/functions/import.rb +1 -1
- data/lib/puppet/functions/json_data.rb +4 -6
- data/lib/puppet/functions/max.rb +2 -2
- data/lib/puppet/functions/min.rb +2 -2
- data/lib/puppet/functions/new.rb +1 -1
- data/lib/puppet/functions/reduce.rb +6 -10
- data/lib/puppet/functions/regsubst.rb +2 -2
- data/lib/puppet/functions/require.rb +1 -1
- data/lib/puppet/functions/yaml_data.rb +11 -13
- data/lib/puppet/functions.rb +32 -37
- data/lib/puppet/generate/type.rb +2 -2
- data/lib/puppet/gettext/config.rb +9 -9
- data/lib/puppet/graph/rb_tree_map.rb +31 -23
- data/lib/puppet/graph/relationship_graph.rb +12 -12
- data/lib/puppet/graph/simple_graph.rb +8 -10
- data/lib/puppet/http/client.rb +1 -1
- data/lib/puppet/http/dns.rb +4 -4
- data/lib/puppet/http/external_client.rb +1 -1
- data/lib/puppet/http/factory.rb +1 -1
- data/lib/puppet/http/proxy.rb +15 -15
- data/lib/puppet/http/redirector.rb +6 -2
- data/lib/puppet/http/resolver.rb +2 -2
- data/lib/puppet/http/retry_after_handler.rb +2 -2
- data/lib/puppet/http/service/ca.rb +1 -1
- data/lib/puppet/http/service/compiler.rb +4 -4
- data/lib/puppet/http/service/file_server.rb +1 -1
- data/lib/puppet/http/service/report.rb +2 -2
- data/lib/puppet/http/service.rb +9 -13
- data/lib/puppet/http/session.rb +1 -1
- data/lib/puppet/http/site.rb +1 -1
- data/lib/puppet/indirector/catalog/compiler.rb +44 -45
- data/lib/puppet/indirector/catalog/rest.rb +7 -5
- data/lib/puppet/indirector/catalog/store_configs.rb +1 -1
- data/lib/puppet/indirector/exec.rb +2 -2
- data/lib/puppet/indirector/face.rb +7 -9
- data/lib/puppet/indirector/fact_search.rb +1 -1
- data/lib/puppet/indirector/facts/facter.rb +6 -6
- data/lib/puppet/indirector/facts/json.rb +1 -1
- data/lib/puppet/indirector/facts/store_configs.rb +1 -1
- data/lib/puppet/indirector/file_bucket_file/file.rb +17 -17
- data/lib/puppet/indirector/file_bucket_file/rest.rb +3 -3
- data/lib/puppet/indirector/file_content/rest.rb +1 -1
- data/lib/puppet/indirector/file_metadata/rest.rb +1 -1
- data/lib/puppet/indirector/hiera.rb +1 -1
- data/lib/puppet/indirector/indirection.rb +27 -29
- data/lib/puppet/indirector/json.rb +4 -4
- data/lib/puppet/indirector/memory.rb +2 -2
- data/lib/puppet/indirector/msgpack.rb +5 -5
- data/lib/puppet/indirector/node/store_configs.rb +1 -1
- data/lib/puppet/indirector/none.rb +1 -1
- data/lib/puppet/indirector/report/json.rb +1 -1
- data/lib/puppet/indirector/report/yaml.rb +1 -1
- data/lib/puppet/indirector/request.rb +4 -4
- data/lib/puppet/indirector/resource/ral.rb +2 -4
- data/lib/puppet/indirector/resource/store_configs.rb +1 -1
- data/lib/puppet/indirector/terminus.rb +4 -4
- data/lib/puppet/indirector/yaml.rb +3 -3
- data/lib/puppet/info_service/class_information_service.rb +5 -8
- data/lib/puppet/info_service/task_information_service.rb +6 -7
- data/lib/puppet/interface/action.rb +5 -5
- data/lib/puppet/interface/action_manager.rb +5 -5
- data/lib/puppet/interface/documentation.rb +5 -5
- data/lib/puppet/interface/face_collection.rb +7 -7
- data/lib/puppet/interface/option.rb +2 -2
- data/lib/puppet/interface/option_manager.rb +6 -6
- data/lib/puppet/interface.rb +4 -4
- data/lib/puppet/metatype/manager.rb +2 -2
- data/lib/puppet/module/plan.rb +10 -10
- data/lib/puppet/module/task.rb +8 -8
- data/lib/puppet/module.rb +39 -41
- data/lib/puppet/module_tool/applications/application.rb +10 -8
- data/lib/puppet/module_tool/applications/installer.rb +53 -50
- data/lib/puppet/module_tool/applications/unpacker.rb +6 -8
- data/lib/puppet/module_tool/applications/upgrader.rb +37 -34
- data/lib/puppet/module_tool/checksums.rb +2 -2
- data/lib/puppet/module_tool/dependency.rb +1 -1
- data/lib/puppet/module_tool/errors/base.rb +1 -1
- data/lib/puppet/module_tool/install_directory.rb +1 -1
- data/lib/puppet/module_tool/local_tarball.rb +3 -5
- data/lib/puppet/module_tool/metadata.rb +12 -8
- data/lib/puppet/module_tool/shared_behaviors.rb +27 -12
- data/lib/puppet/module_tool/tar/mini.rb +3 -3
- data/lib/puppet/module_tool.rb +4 -4
- data/lib/puppet/network/client_request.rb +5 -3
- data/lib/puppet/network/format.rb +2 -2
- data/lib/puppet/network/format_support.rb +1 -1
- data/lib/puppet/network/formats.rb +1 -1
- data/lib/puppet/network/http/api/indirected_routes.rb +24 -44
- data/lib/puppet/network/http/api/server/v3.rb +1 -1
- data/lib/puppet/network/http/connection.rb +1 -1
- data/lib/puppet/network/http/handler.rb +8 -12
- data/lib/puppet/network/http/request.rb +1 -1
- data/lib/puppet/network/http/route.rb +9 -9
- data/lib/puppet/node/environment.rb +21 -23
- data/lib/puppet/node/facts.rb +1 -1
- data/lib/puppet/node.rb +5 -5
- data/lib/puppet/pal/json_catalog_encoder.rb +1 -1
- data/lib/puppet/pal/pal_impl.rb +48 -50
- data/lib/puppet/pal/plan_signature.rb +1 -1
- data/lib/puppet/pal/task_signature.rb +1 -1
- data/lib/puppet/parameter/package_options.rb +1 -1
- data/lib/puppet/parameter/value.rb +2 -2
- data/lib/puppet/parameter/value_collection.rb +7 -7
- data/lib/puppet/parameter.rb +8 -9
- data/lib/puppet/parser/ast/block_expression.rb +2 -2
- data/lib/puppet/parser/ast/hostclass.rb +1 -1
- data/lib/puppet/parser/ast/pops_bridge.rb +3 -4
- data/lib/puppet/parser/ast/resource.rb +4 -4
- data/lib/puppet/parser/ast/resourceparam.rb +4 -4
- data/lib/puppet/parser/ast.rb +14 -15
- data/lib/puppet/parser/compiler.rb +26 -28
- data/lib/puppet/parser/functions/create_resources.rb +3 -3
- data/lib/puppet/parser/functions/fail.rb +1 -1
- data/lib/puppet/parser/functions/generate.rb +2 -2
- data/lib/puppet/parser/functions/tag.rb +1 -1
- data/lib/puppet/parser/functions.rb +2 -2
- data/lib/puppet/parser/relationship.rb +3 -1
- data/lib/puppet/parser/resource/param.rb +2 -2
- data/lib/puppet/parser/resource.rb +23 -23
- data/lib/puppet/parser/scope.rb +10 -10
- data/lib/puppet/parser/script_compiler.rb +1 -1
- data/lib/puppet/parser/templatewrapper.rb +1 -1
- data/lib/puppet/parser/type_loader.rb +10 -12
- data/lib/puppet/parser.rb +1 -1
- data/lib/puppet/pops/adaptable.rb +1 -1
- data/lib/puppet/pops/evaluator/access_operator.rb +8 -8
- data/lib/puppet/pops/evaluator/callable_signature.rb +4 -4
- data/lib/puppet/pops/evaluator/collector_transformer.rb +4 -4
- data/lib/puppet/pops/evaluator/collectors/abstract_collector.rb +7 -7
- data/lib/puppet/pops/evaluator/collectors/fixed_set_collector.rb +6 -6
- data/lib/puppet/pops/evaluator/compare_operator.rb +10 -10
- data/lib/puppet/pops/evaluator/deferred_resolver.rb +1 -1
- data/lib/puppet/pops/evaluator/epp_evaluator.rb +2 -2
- data/lib/puppet/pops/evaluator/evaluator_impl.rb +56 -60
- data/lib/puppet/pops/evaluator/relationship_operator.rb +2 -2
- data/lib/puppet/pops/evaluator/runtime3_converter.rb +3 -3
- data/lib/puppet/pops/evaluator/runtime3_support.rb +1 -1
- data/lib/puppet/pops/functions/dispatcher.rb +3 -3
- data/lib/puppet/pops/functions/function.rb +14 -16
- data/lib/puppet/pops/issue_reporter.rb +2 -2
- data/lib/puppet/pops/label_provider.rb +2 -2
- data/lib/puppet/pops/loader/dependency_loader.rb +3 -3
- data/lib/puppet/pops/loader/loader.rb +4 -4
- data/lib/puppet/pops/loader/loader_paths.rb +3 -3
- data/lib/puppet/pops/loader/module_loaders.rb +11 -11
- data/lib/puppet/pops/loader/ruby_data_type_instantiator.rb +1 -1
- data/lib/puppet/pops/loader/ruby_function_instantiator.rb +1 -1
- data/lib/puppet/pops/loader/ruby_legacy_function_instantiator.rb +5 -1
- data/lib/puppet/pops/loader/static_loader.rb +3 -3
- data/lib/puppet/pops/loaders.rb +3 -3
- data/lib/puppet/pops/lookup/data_dig_function_provider.rb +1 -1
- data/lib/puppet/pops/lookup/explainer.rb +2 -2
- data/lib/puppet/pops/lookup/global_data_provider.rb +1 -1
- data/lib/puppet/pops/lookup/hiera_config.rb +15 -11
- data/lib/puppet/pops/lookup/interpolation.rb +3 -3
- data/lib/puppet/pops/lookup/key_recorder.rb +1 -1
- data/lib/puppet/pops/lookup/location_resolver.rb +1 -1
- data/lib/puppet/pops/lookup/lookup_adapter.rb +7 -7
- data/lib/puppet/pops/lookup/sub_lookup.rb +1 -1
- data/lib/puppet/pops/merge_strategy.rb +6 -6
- data/lib/puppet/pops/migration/migration_checker.rb +1 -1
- data/lib/puppet/pops/model/ast_transformer.rb +9 -11
- data/lib/puppet/pops/model/factory.rb +4 -5
- data/lib/puppet/pops/parser/epp_parser.rb +2 -2
- data/lib/puppet/pops/parser/epp_support.rb +1 -1
- data/lib/puppet/pops/parser/evaluating_parser.rb +2 -2
- data/lib/puppet/pops/parser/heredoc_support.rb +4 -4
- data/lib/puppet/pops/parser/interpolation_support.rb +3 -3
- data/lib/puppet/pops/parser/lexer2.rb +20 -12
- data/lib/puppet/pops/parser/lexer_support.rb +1 -1
- data/lib/puppet/pops/parser/locator.rb +4 -4
- data/lib/puppet/pops/parser/parser_support.rb +12 -14
- data/lib/puppet/pops/parser/pn_parser.rb +3 -3
- data/lib/puppet/pops/parser/slurp_support.rb +8 -8
- data/lib/puppet/pops/patterns.rb +12 -12
- data/lib/puppet/pops/pcore.rb +1 -1
- data/lib/puppet/pops/pn.rb +2 -2
- data/lib/puppet/pops/puppet_stack.rb +1 -1
- data/lib/puppet/pops/resource/resource_type_impl.rb +1 -1
- data/lib/puppet/pops/serialization/abstract_reader.rb +2 -2
- data/lib/puppet/pops/serialization/abstract_writer.rb +3 -3
- data/lib/puppet/pops/time/timestamp.rb +1 -1
- data/lib/puppet/pops/types/class_loader.rb +4 -6
- data/lib/puppet/pops/types/iterable.rb +1 -1
- data/lib/puppet/pops/types/p_binary_type.rb +1 -1
- data/lib/puppet/pops/types/p_init_type.rb +1 -1
- data/lib/puppet/pops/types/p_object_type.rb +5 -5
- data/lib/puppet/pops/types/p_object_type_extension.rb +4 -6
- data/lib/puppet/pops/types/p_sem_ver_range_type.rb +1 -1
- data/lib/puppet/pops/types/p_sensitive_type.rb +1 -1
- data/lib/puppet/pops/types/p_timespan_type.rb +2 -2
- data/lib/puppet/pops/types/p_type_set_type.rb +10 -10
- data/lib/puppet/pops/types/p_uri_type.rb +4 -4
- data/lib/puppet/pops/types/recursion_guard.rb +4 -4
- data/lib/puppet/pops/types/ruby_generator.rb +2 -2
- data/lib/puppet/pops/types/string_converter.rb +12 -8
- data/lib/puppet/pops/types/tree_iterators.rb +4 -6
- data/lib/puppet/pops/types/type_calculator.rb +10 -10
- data/lib/puppet/pops/types/type_factory.rb +7 -3
- data/lib/puppet/pops/types/type_formatter.rb +22 -24
- data/lib/puppet/pops/types/type_mismatch_describer.rb +24 -24
- data/lib/puppet/pops/types/types.rb +28 -24
- data/lib/puppet/pops/utils.rb +38 -42
- data/lib/puppet/pops/validation/checker4_0.rb +10 -10
- data/lib/puppet/pops/validation/tasks_checker.rb +1 -1
- data/lib/puppet/pops/validation/validator_factory_4_0.rb +1 -1
- data/lib/puppet/pops/validation.rb +4 -4
- data/lib/puppet/pops/visitor.rb +2 -2
- data/lib/puppet/property/ensure.rb +12 -14
- data/lib/puppet/property/keyvalue.rb +4 -4
- data/lib/puppet/property/list.rb +4 -4
- data/lib/puppet/property/ordered_list.rb +1 -1
- data/lib/puppet/property.rb +31 -33
- data/lib/puppet/provider/exec.rb +2 -2
- data/lib/puppet/provider/file/posix.rb +19 -17
- data/lib/puppet/provider/file/windows.rb +13 -19
- data/lib/puppet/provider/group/directoryservice.rb +3 -2
- data/lib/puppet/provider/group/groupadd.rb +4 -4
- data/lib/puppet/provider/group/windows_adsi.rb +2 -2
- data/lib/puppet/provider/nameservice/directoryservice.rb +29 -29
- data/lib/puppet/provider/nameservice/objectadd.rb +2 -4
- data/lib/puppet/provider/nameservice/pw.rb +1 -2
- data/lib/puppet/provider/nameservice.rb +8 -8
- data/lib/puppet/provider/package/aix.rb +19 -19
- data/lib/puppet/provider/package/appdmg.rb +2 -2
- data/lib/puppet/provider/package/apple.rb +1 -1
- data/lib/puppet/provider/package/apt.rb +18 -18
- data/lib/puppet/provider/package/aptitude.rb +1 -3
- data/lib/puppet/provider/package/aptrpm.rb +9 -9
- data/lib/puppet/provider/package/blastwave.rb +10 -14
- data/lib/puppet/provider/package/dnfmodule.rb +3 -3
- data/lib/puppet/provider/package/dpkg.rb +11 -13
- data/lib/puppet/provider/package/fink.rb +14 -14
- data/lib/puppet/provider/package/freebsd.rb +1 -1
- data/lib/puppet/provider/package/gem.rb +12 -14
- data/lib/puppet/provider/package/macports.rb +2 -2
- data/lib/puppet/provider/package/nim.rb +10 -10
- data/lib/puppet/provider/package/openbsd.rb +22 -22
- data/lib/puppet/provider/package/opkg.rb +6 -6
- data/lib/puppet/provider/package/pacman.rb +35 -29
- data/lib/puppet/provider/package/pip.rb +25 -24
- data/lib/puppet/provider/package/pkg.rb +15 -15
- data/lib/puppet/provider/package/pkgdmg.rb +10 -10
- data/lib/puppet/provider/package/pkgin.rb +2 -2
- data/lib/puppet/provider/package/pkgng.rb +5 -5
- data/lib/puppet/provider/package/pkgutil.rb +17 -21
- data/lib/puppet/provider/package/portage.rb +59 -61
- data/lib/puppet/provider/package/ports.rb +12 -11
- data/lib/puppet/provider/package/portupgrade.rb +35 -35
- data/lib/puppet/provider/package/puppetserver_gem.rb +10 -9
- data/lib/puppet/provider/package/rpm.rb +26 -26
- data/lib/puppet/provider/package/rug.rb +7 -9
- data/lib/puppet/provider/package/sun.rb +4 -4
- data/lib/puppet/provider/package/up2date.rb +5 -7
- data/lib/puppet/provider/package/urpmi.rb +6 -6
- data/lib/puppet/provider/package/windows/exe_package.rb +7 -7
- data/lib/puppet/provider/package/windows/msi_package.rb +3 -3
- data/lib/puppet/provider/package/windows/package.rb +2 -2
- data/lib/puppet/provider/package/windows.rb +3 -5
- data/lib/puppet/provider/package/yum.rb +33 -37
- data/lib/puppet/provider/package/zypper.rb +12 -14
- data/lib/puppet/provider/package.rb +1 -1
- data/lib/puppet/provider/package_targetable.rb +1 -1
- data/lib/puppet/provider/parsedfile.rb +9 -9
- data/lib/puppet/provider/service/base.rb +16 -21
- data/lib/puppet/provider/service/bsd.rb +4 -4
- data/lib/puppet/provider/service/daemontools.rb +31 -31
- data/lib/puppet/provider/service/debian.rb +6 -6
- data/lib/puppet/provider/service/freebsd.rb +36 -36
- data/lib/puppet/provider/service/gentoo.rb +6 -6
- data/lib/puppet/provider/service/init.rb +19 -19
- data/lib/puppet/provider/service/launchd.rb +22 -22
- data/lib/puppet/provider/service/openbsd.rb +10 -10
- data/lib/puppet/provider/service/openrc.rb +1 -1
- data/lib/puppet/provider/service/openwrt.rb +3 -3
- data/lib/puppet/provider/service/rcng.rb +3 -3
- data/lib/puppet/provider/service/redhat.rb +4 -4
- data/lib/puppet/provider/service/runit.rb +6 -6
- data/lib/puppet/provider/service/service.rb +5 -7
- data/lib/puppet/provider/service/smf.rb +28 -27
- data/lib/puppet/provider/service/src.rb +7 -7
- data/lib/puppet/provider/service/systemd.rb +31 -37
- data/lib/puppet/provider/service/upstart.rb +17 -17
- data/lib/puppet/provider/service/windows.rb +7 -7
- data/lib/puppet/provider/user/aix.rb +4 -2
- data/lib/puppet/provider/user/directoryservice.rb +34 -36
- data/lib/puppet/provider/user/hpux.rb +10 -14
- data/lib/puppet/provider/user/pw.rb +1 -1
- data/lib/puppet/provider/user/user_role_add.rb +16 -18
- data/lib/puppet/provider/user/useradd.rb +7 -7
- data/lib/puppet/provider/user/windows_adsi.rb +1 -1
- data/lib/puppet/provider.rb +8 -8
- data/lib/puppet/reference/indirection.rb +3 -0
- data/lib/puppet/reference/metaparameter.rb +1 -1
- data/lib/puppet/reference/providers.rb +3 -3
- data/lib/puppet/reference/type.rb +1 -1
- data/lib/puppet/relationship.rb +4 -5
- data/lib/puppet/reports/http.rb +1 -1
- data/lib/puppet/reports/log.rb +2 -2
- data/lib/puppet/reports/store.rb +4 -4
- data/lib/puppet/reports.rb +2 -2
- data/lib/puppet/resource/catalog.rb +16 -16
- data/lib/puppet/resource/status.rb +3 -3
- data/lib/puppet/resource/type.rb +8 -8
- data/lib/puppet/resource/type_collection.rb +1 -1
- data/lib/puppet/resource.rb +41 -41
- data/lib/puppet/scheduler/scheduler.rb +1 -1
- data/lib/puppet/settings/alias_setting.rb +3 -5
- data/lib/puppet/settings/base_setting.rb +11 -11
- data/lib/puppet/settings/boolean_setting.rb +2 -2
- data/lib/puppet/settings/config_file.rb +5 -4
- data/lib/puppet/settings/duration_setting.rb +2 -2
- data/lib/puppet/settings/environment_conf.rb +3 -3
- data/lib/puppet/settings/file_or_directory_setting.rb +2 -2
- data/lib/puppet/settings/file_setting.rb +11 -11
- data/lib/puppet/settings/ini_file.rb +3 -3
- data/lib/puppet/settings/port_setting.rb +1 -1
- data/lib/puppet/settings/priority_setting.rb +2 -2
- data/lib/puppet/settings/ttl_setting.rb +2 -2
- data/lib/puppet/settings/value_translator.rb +8 -8
- data/lib/puppet/settings.rb +65 -70
- data/lib/puppet/ssl/base.rb +2 -4
- data/lib/puppet/ssl/certificate_request.rb +18 -22
- data/lib/puppet/ssl/certificate_request_attributes.rb +3 -3
- data/lib/puppet/ssl/oids.rb +2 -2
- data/lib/puppet/ssl/openssl_loader.rb +4 -4
- data/lib/puppet/syntax_checkers/base64.rb +3 -3
- data/lib/puppet/syntax_checkers/epp.rb +3 -3
- data/lib/puppet/syntax_checkers/json.rb +3 -3
- data/lib/puppet/syntax_checkers/pp.rb +3 -3
- data/lib/puppet/transaction/additional_resource_generator.rb +1 -1
- data/lib/puppet/transaction/event.rb +2 -2
- data/lib/puppet/transaction/event_manager.rb +5 -5
- data/lib/puppet/transaction/persistence.rb +12 -14
- data/lib/puppet/transaction/report.rb +4 -4
- data/lib/puppet/transaction/resource_harness.rb +2 -2
- data/lib/puppet/transaction.rb +14 -18
- data/lib/puppet/type/component.rb +3 -3
- data/lib/puppet/type/exec.rb +43 -45
- data/lib/puppet/type/file/checksum_value.rb +1 -1
- data/lib/puppet/type/file/content.rb +6 -6
- data/lib/puppet/type/file/ctime.rb +2 -2
- data/lib/puppet/type/file/data_sync.rb +3 -3
- data/lib/puppet/type/file/ensure.rb +16 -15
- data/lib/puppet/type/file/mode.rb +9 -9
- data/lib/puppet/type/file/mtime.rb +2 -2
- data/lib/puppet/type/file/selcontext.rb +14 -14
- data/lib/puppet/type/file/source.rb +19 -21
- data/lib/puppet/type/file/target.rb +11 -11
- data/lib/puppet/type/file.rb +21 -21
- data/lib/puppet/type/filebucket.rb +3 -3
- data/lib/puppet/type/group.rb +3 -3
- data/lib/puppet/type/notify.rb +2 -2
- data/lib/puppet/type/package.rb +4 -4
- data/lib/puppet/type/resources.rb +6 -6
- data/lib/puppet/type/schedule.rb +9 -9
- data/lib/puppet/type/service.rb +6 -8
- data/lib/puppet/type/tidy.rb +22 -24
- data/lib/puppet/type/user.rb +13 -13
- data/lib/puppet/type.rb +76 -88
- data/lib/puppet/util/at_fork/solaris.rb +33 -37
- data/lib/puppet/util/autoload.rb +2 -2
- data/lib/puppet/util/backups.rb +9 -9
- data/lib/puppet/util/character_encoding.rb +7 -6
- data/lib/puppet/util/checksums.rb +2 -2
- data/lib/puppet/util/classgen.rb +8 -8
- data/lib/puppet/util/colors.rb +1 -1
- data/lib/puppet/util/command_line/puppet_option_parser.rb +1 -1
- data/lib/puppet/util/command_line/trollop.rb +42 -46
- data/lib/puppet/util/command_line.rb +2 -2
- data/lib/puppet/util/constant_inflector.rb +2 -2
- data/lib/puppet/util/diff.rb +19 -21
- data/lib/puppet/util/docs.rb +2 -2
- data/lib/puppet/util/errors.rb +9 -9
- data/lib/puppet/util/execution.rb +32 -9
- data/lib/puppet/util/feature.rb +1 -1
- data/lib/puppet/util/fileparsing.rb +12 -16
- data/lib/puppet/util/filetype.rb +36 -40
- data/lib/puppet/util/inifile.rb +6 -12
- data/lib/puppet/util/ldap/connection.rb +1 -1
- data/lib/puppet/util/ldap/manager.rb +10 -12
- data/lib/puppet/util/lockfile.rb +6 -8
- data/lib/puppet/util/log/destination.rb +2 -2
- data/lib/puppet/util/log/destinations.rb +4 -4
- data/lib/puppet/util/log.rb +12 -9
- data/lib/puppet/util/logging.rb +11 -11
- data/lib/puppet/util/metric.rb +3 -3
- data/lib/puppet/util/monkey_patches.rb +5 -7
- data/lib/puppet/util/network_device/config.rb +3 -3
- data/lib/puppet/util/package/version/debian.rb +27 -28
- data/lib/puppet/util/package/version/pip.rb +5 -5
- data/lib/puppet/util/package/version/range/eq.rb +1 -1
- data/lib/puppet/util/package/version/rpm.rb +1 -1
- data/lib/puppet/util/package.rb +2 -2
- data/lib/puppet/util/pidlock.rb +2 -2
- data/lib/puppet/util/platform.rb +1 -1
- data/lib/puppet/util/plist.rb +8 -10
- data/lib/puppet/util/posix.rb +17 -17
- data/lib/puppet/util/profiler/aggregate.rb +1 -1
- data/lib/puppet/util/provider_features.rb +3 -3
- data/lib/puppet/util/rdoc/code_objects.rb +3 -3
- data/lib/puppet/util/rdoc/generators/puppet_generator.rb +63 -64
- data/lib/puppet/util/rdoc/generators/template/puppet/puppet.rb +23 -23
- data/lib/puppet/util/rdoc/parser/puppet_parser_core.rb +12 -12
- data/lib/puppet/util/rdoc/parser/puppet_parser_rdoc2.rb +1 -1
- data/lib/puppet/util/rdoc/parser.rb +1 -1
- data/lib/puppet/util/reference.rb +13 -9
- data/lib/puppet/util/retry_action.rb +1 -1
- data/lib/puppet/util/rpm_compare.rb +17 -18
- data/lib/puppet/util/rubygems.rb +1 -1
- data/lib/puppet/util/selinux.rb +7 -7
- data/lib/puppet/util/storage.rb +10 -12
- data/lib/puppet/util/suidmanager.rb +18 -19
- data/lib/puppet/util/symbolic_file_mode.rb +71 -75
- data/lib/puppet/util/tag_set.rb +2 -2
- data/lib/puppet/util/tagging.rb +8 -10
- data/lib/puppet/util/terminal.rb +4 -4
- data/lib/puppet/util/user_attr.rb +7 -7
- data/lib/puppet/util/watcher.rb +3 -5
- data/lib/puppet/util/windows/access_control_list.rb +1 -1
- data/lib/puppet/util/windows/adsi.rb +42 -42
- data/lib/puppet/util/windows/daemon.rb +64 -68
- data/lib/puppet/util/windows/error.rb +2 -2
- data/lib/puppet/util/windows/file.rb +18 -25
- data/lib/puppet/util/windows/monkey_patches/process.rb +1 -1
- data/lib/puppet/util/windows/principal.rb +8 -8
- data/lib/puppet/util/windows/process.rb +16 -28
- data/lib/puppet/util/windows/registry.rb +16 -15
- data/lib/puppet/util/windows/root_certs.rb +2 -2
- data/lib/puppet/util/windows/security.rb +31 -31
- data/lib/puppet/util/windows/service.rb +11 -11
- data/lib/puppet/util/windows/sid.rb +8 -8
- data/lib/puppet/util/windows/user.rb +18 -20
- data/lib/puppet/util/yaml.rb +1 -1
- data/lib/puppet/util.rb +55 -46
- data/lib/puppet/version.rb +2 -2
- data/lib/puppet/x509/pem_store.rb +1 -1
- data/lib/puppet.rb +3 -3
- data/man/man5/puppet.conf.5 +10 -2
- data/man/man8/puppet-agent.8 +1 -1
- data/man/man8/puppet-apply.8 +1 -1
- 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 +1 -1
- data/man/man8/puppet-doc.8 +1 -1
- data/man/man8/puppet-epp.8 +1 -1
- data/man/man8/puppet-facts.8 +1 -1
- data/man/man8/puppet-filebucket.8 +1 -1
- 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 -1
- data/man/man8/puppet-node.8 +1 -1
- data/man/man8/puppet-parser.8 +1 -1
- data/man/man8/puppet-plugin.8 +1 -1
- data/man/man8/puppet-report.8 +1 -1
- data/man/man8/puppet-resource.8 +5 -1
- data/man/man8/puppet-script.8 +1 -1
- data/man/man8/puppet-ssl.8 +1 -1
- data/man/man8/puppet.8 +2 -2
- metadata +2 -2
data/lib/puppet/functions.rb
CHANGED
@@ -188,12 +188,11 @@ module Puppet::Functions
|
|
188
188
|
# and it will fail unless protected with an if defined? if the local
|
189
189
|
# variable does not exist in the block's binder.
|
190
190
|
#
|
191
|
-
|
192
|
-
|
193
|
-
|
194
|
-
|
195
|
-
|
196
|
-
end
|
191
|
+
|
192
|
+
loader = block.binding.eval('loader_injected_arg if defined?(loader_injected_arg)')
|
193
|
+
create_loaded_function(func_name, loader, function_base, &block)
|
194
|
+
rescue StandardError => e
|
195
|
+
raise ArgumentError, _("Function Load Error for function '%{function_name}': %{message}") % { function_name: func_name, message: e.message }
|
197
196
|
end
|
198
197
|
|
199
198
|
# Creates a function in, or in a local loader under the given loader.
|
@@ -570,7 +569,7 @@ module Puppet::Functions
|
|
570
569
|
@block_name = nil
|
571
570
|
@return_type = nil
|
572
571
|
@argument_mismatch_hander = argument_mismatch_handler
|
573
|
-
|
572
|
+
instance_eval(&block)
|
574
573
|
callable_t = create_callable(@types, @block_type, @return_type, @min, @max)
|
575
574
|
@dispatcher.add(Puppet::Pops::Functions::Dispatch.new(callable_t, meth_name, @names, @max == :default, @block_name, @injections, @weaving, @argument_mismatch_hander))
|
576
575
|
end
|
@@ -591,14 +590,12 @@ module Puppet::Functions
|
|
591
590
|
end
|
592
591
|
|
593
592
|
def internal_type_parse(type_string, loader)
|
594
|
-
|
595
|
-
|
596
|
-
|
597
|
-
|
598
|
-
|
599
|
-
|
600
|
-
}
|
601
|
-
end
|
593
|
+
Puppet::Pops::Types::TypeParser.singleton.parse(type_string, loader)
|
594
|
+
rescue StandardError => e
|
595
|
+
raise ArgumentError, _("Parsing of type string '\"%{type_string}\"' failed with message: <%{message}>.\n") % {
|
596
|
+
type_string: type_string,
|
597
|
+
message: e.message
|
598
|
+
}
|
602
599
|
end
|
603
600
|
private :internal_type_parse
|
604
601
|
end
|
@@ -688,10 +685,10 @@ module Puppet::Functions
|
|
688
685
|
PARAM_NAMES = [
|
689
686
|
[],
|
690
687
|
['p0'].freeze,
|
691
|
-
[
|
692
|
-
[
|
693
|
-
[
|
694
|
-
[
|
688
|
+
%w[p0 p1].freeze,
|
689
|
+
%w[p0 p1 p2].freeze,
|
690
|
+
%w[p0 p1 p2 p3].freeze,
|
691
|
+
%w[p0 p1 p2 p3 p4].freeze
|
695
692
|
]
|
696
693
|
|
697
694
|
# Creates an anonymous Function3x class that wraps a 3x function
|
@@ -746,25 +743,23 @@ module Puppet::Functions
|
|
746
743
|
# used to support other features than calling.
|
747
744
|
#
|
748
745
|
def call(scope, *args, &block)
|
746
|
+
result = catch(:return) do
|
747
|
+
mapped_args = Puppet::Pops::Evaluator::Runtime3FunctionArgumentConverter.map_args(args, scope, '')
|
748
|
+
# this is the scope.function_xxx(...) call
|
749
|
+
return scope.send(self.class.method3x, mapped_args)
|
750
|
+
end
|
751
|
+
result.value
|
752
|
+
rescue Puppet::Pops::Evaluator::Next => jumper
|
753
|
+
begin
|
754
|
+
throw :next, jumper.value
|
755
|
+
rescue Puppet::Parser::Scope::UNCAUGHT_THROW_EXCEPTION
|
756
|
+
raise Puppet::ParseError.new("next() from context where this is illegal", jumper.file, jumper.line)
|
757
|
+
end
|
758
|
+
rescue Puppet::Pops::Evaluator::Return => jumper
|
749
759
|
begin
|
750
|
-
|
751
|
-
|
752
|
-
|
753
|
-
return scope.send(self.class.method3x, mapped_args)
|
754
|
-
end
|
755
|
-
return result.value
|
756
|
-
rescue Puppet::Pops::Evaluator::Next => jumper
|
757
|
-
begin
|
758
|
-
throw :next, jumper.value
|
759
|
-
rescue Puppet::Parser::Scope::UNCAUGHT_THROW_EXCEPTION
|
760
|
-
raise Puppet::ParseError.new("next() from context where this is illegal", jumper.file, jumper.line)
|
761
|
-
end
|
762
|
-
rescue Puppet::Pops::Evaluator::Return => jumper
|
763
|
-
begin
|
764
|
-
throw :return, jumper
|
765
|
-
rescue Puppet::Parser::Scope::UNCAUGHT_THROW_EXCEPTION
|
766
|
-
raise Puppet::ParseError.new("return() from context where this is illegal", jumper.file, jumper.line)
|
767
|
-
end
|
760
|
+
throw :return, jumper
|
761
|
+
rescue Puppet::Parser::Scope::UNCAUGHT_THROW_EXCEPTION
|
762
|
+
raise Puppet::ParseError.new("return() from context where this is illegal", jumper.file, jumper.line)
|
768
763
|
end
|
769
764
|
end
|
770
765
|
end
|
data/lib/puppet/generate/type.rb
CHANGED
@@ -135,7 +135,7 @@ module Puppet
|
|
135
135
|
end
|
136
136
|
|
137
137
|
# Sort the inputs by path
|
138
|
-
inputs.sort_by!
|
138
|
+
inputs.sort_by!(&:path)
|
139
139
|
end
|
140
140
|
|
141
141
|
def self.bad_input?
|
@@ -155,7 +155,7 @@ module Puppet
|
|
155
155
|
def self.generate(inputs, outputdir = nil, force = false)
|
156
156
|
# remove files for non existing inputs
|
157
157
|
unless outputdir.nil?
|
158
|
-
filenames_to_keep = inputs.map
|
158
|
+
filenames_to_keep = inputs.map(&:output_name)
|
159
159
|
existing_files = Puppet::FileSystem.children(outputdir).map { |f| Puppet::FileSystem.basename(f) }
|
160
160
|
files_to_remove = existing_files - filenames_to_keep
|
161
161
|
files_to_remove.each do |f|
|
@@ -43,9 +43,9 @@ module Puppet::GettextConfig
|
|
43
43
|
# @return [String] the active locale
|
44
44
|
def self.current_locale
|
45
45
|
if gettext_loaded?
|
46
|
-
|
46
|
+
FastGettext.default_locale
|
47
47
|
else
|
48
|
-
|
48
|
+
'en'
|
49
49
|
end
|
50
50
|
end
|
51
51
|
|
@@ -55,7 +55,7 @@ module Puppet::GettextConfig
|
|
55
55
|
def self.loaded_text_domains
|
56
56
|
return [] if @gettext_disabled || !gettext_loaded?
|
57
57
|
|
58
|
-
|
58
|
+
FastGettext.translation_repositories.keys
|
59
59
|
end
|
60
60
|
|
61
61
|
# @api private
|
@@ -191,11 +191,11 @@ module Puppet::GettextConfig
|
|
191
191
|
# @return [String] path to the config, or nil if not found
|
192
192
|
def self.puppet_locale_path
|
193
193
|
if Puppet::FileSystem.exist?(LOCAL_PATH)
|
194
|
-
|
194
|
+
LOCAL_PATH
|
195
195
|
elsif Puppet::Util::Platform.windows? && Puppet::FileSystem.exist?(WINDOWS_PATH)
|
196
|
-
|
196
|
+
WINDOWS_PATH
|
197
197
|
elsif !Puppet::Util::Platform.windows? && Puppet::FileSystem.exist?(POSIX_PATH)
|
198
|
-
|
198
|
+
POSIX_PATH
|
199
199
|
else
|
200
200
|
nil
|
201
201
|
end
|
@@ -207,9 +207,9 @@ module Puppet::GettextConfig
|
|
207
207
|
# @return [Symbol] :mo if in a package structure, :po otherwise
|
208
208
|
def self.translation_mode(conf_path)
|
209
209
|
if WINDOWS_PATH == conf_path || POSIX_PATH == conf_path
|
210
|
-
|
210
|
+
:mo
|
211
211
|
else
|
212
|
-
|
212
|
+
:po
|
213
213
|
end
|
214
214
|
end
|
215
215
|
|
@@ -239,7 +239,7 @@ module Puppet::GettextConfig
|
|
239
239
|
end
|
240
240
|
|
241
241
|
add_repository_to_domain(project_name, locale_dir, file_format, text_domain)
|
242
|
-
|
242
|
+
true
|
243
243
|
end
|
244
244
|
|
245
245
|
# @api private
|
@@ -236,33 +236,41 @@ class Puppet::Graph::RbTreeMap
|
|
236
236
|
|
237
237
|
def rotate_left
|
238
238
|
r = @right
|
239
|
-
r_key
|
239
|
+
r_key = r.key
|
240
|
+
r_value = r.value
|
240
241
|
b = r.left
|
241
242
|
r.left = @left
|
242
243
|
@left = r
|
243
244
|
@right = r.right
|
244
245
|
r.right = b
|
245
|
-
r.color
|
246
|
-
|
246
|
+
r.color = :red
|
247
|
+
r.key = @key
|
248
|
+
r.value = @value
|
249
|
+
@key = r_key
|
250
|
+
@value = r_value
|
247
251
|
self
|
248
252
|
end
|
249
253
|
|
250
254
|
def rotate_right
|
251
255
|
l = @left
|
252
|
-
l_key
|
256
|
+
l_key = l.key
|
257
|
+
l_value = l.value
|
253
258
|
b = l.right
|
254
259
|
l.right = @right
|
255
260
|
@right = l
|
256
261
|
@left = l.left
|
257
262
|
l.left = b
|
258
|
-
l.color
|
259
|
-
|
263
|
+
l.color = :red
|
264
|
+
l.key = @key
|
265
|
+
l.value = @value
|
266
|
+
@key = l_key
|
267
|
+
@value = l_value
|
260
268
|
self
|
261
269
|
end
|
262
270
|
|
263
271
|
def move_red_left
|
264
272
|
colorflip
|
265
|
-
if
|
273
|
+
if @right.left && @right.left.red?
|
266
274
|
@right.rotate_right
|
267
275
|
rotate_left
|
268
276
|
colorflip
|
@@ -272,7 +280,7 @@ class Puppet::Graph::RbTreeMap
|
|
272
280
|
|
273
281
|
def move_red_right
|
274
282
|
colorflip
|
275
|
-
if
|
283
|
+
if @left.left && @left.left.red?
|
276
284
|
rotate_right
|
277
285
|
colorflip
|
278
286
|
end
|
@@ -300,15 +308,15 @@ class Puppet::Graph::RbTreeMap
|
|
300
308
|
|
301
309
|
def delete_recursive(node, key)
|
302
310
|
if (key <=> node.key) == -1
|
303
|
-
node.move_red_left if
|
311
|
+
node.move_red_left if !isred(node.left) && !isred(node.left.left)
|
304
312
|
node.left, result = delete_recursive(node.left, key)
|
305
313
|
else
|
306
314
|
node.rotate_right if isred(node.left)
|
307
|
-
if ((
|
315
|
+
if ((key <=> node.key) == 0) && node.right.nil?
|
308
316
|
return nil, node.value
|
309
317
|
end
|
310
318
|
|
311
|
-
if
|
319
|
+
if !isred(node.right) && !isred(node.right.left)
|
312
320
|
node.move_red_right
|
313
321
|
end
|
314
322
|
if (key <=> node.key) == 0
|
@@ -321,7 +329,7 @@ class Puppet::Graph::RbTreeMap
|
|
321
329
|
node.right, result = delete_recursive(node.right, key)
|
322
330
|
end
|
323
331
|
end
|
324
|
-
|
332
|
+
[node.fixup, result]
|
325
333
|
end
|
326
334
|
|
327
335
|
def delete_min_recursive(node)
|
@@ -329,35 +337,35 @@ class Puppet::Graph::RbTreeMap
|
|
329
337
|
return nil, node.value
|
330
338
|
end
|
331
339
|
|
332
|
-
if
|
340
|
+
if !isred(node.left) && !isred(node.left.left)
|
333
341
|
node.move_red_left
|
334
342
|
end
|
335
343
|
node.left, result = delete_min_recursive(node.left)
|
336
344
|
|
337
|
-
|
345
|
+
[node.fixup, result]
|
338
346
|
end
|
339
347
|
|
340
348
|
def delete_max_recursive(node)
|
341
|
-
if
|
349
|
+
if isred(node.left)
|
342
350
|
node = node.rotate_right
|
343
351
|
end
|
344
352
|
return nil, node.value if node.right.nil?
|
345
353
|
|
346
|
-
if
|
354
|
+
if !isred(node.right) && !isred(node.right.left)
|
347
355
|
node.move_red_right
|
348
356
|
end
|
349
357
|
node.right, result = delete_max_recursive(node.right)
|
350
358
|
|
351
|
-
|
359
|
+
[node.fixup, result]
|
352
360
|
end
|
353
361
|
|
354
362
|
def get_recursive(node, key)
|
355
363
|
return nil if node.nil?
|
356
364
|
|
357
365
|
case key <=> node.key
|
358
|
-
when 0 then
|
359
|
-
when -1 then
|
360
|
-
when 1 then
|
366
|
+
when 0 then node
|
367
|
+
when -1 then get_recursive(node.left, key)
|
368
|
+
when 1 then get_recursive(node.right, key)
|
361
369
|
end
|
362
370
|
end
|
363
371
|
|
@@ -385,9 +393,9 @@ class Puppet::Graph::RbTreeMap
|
|
385
393
|
when 1 then node.right = insert(node.right, key, value)
|
386
394
|
end
|
387
395
|
|
388
|
-
node.rotate_left if
|
389
|
-
node.rotate_right if
|
390
|
-
node.colorflip if
|
396
|
+
node.rotate_left if node.right && node.right.red?
|
397
|
+
node.rotate_right if node.left && node.left.red? && node.left.left && node.left.left.red?
|
398
|
+
node.colorflip if node.left && node.left.red? && node.right && node.right.red?
|
391
399
|
node
|
392
400
|
end
|
393
401
|
|
@@ -128,22 +128,22 @@ class Puppet::Graph::RelationshipGraph < Puppet::Graph::SimpleGraph
|
|
128
128
|
deferred_resources << resource
|
129
129
|
end
|
130
130
|
|
131
|
-
|
132
|
-
if made_progress
|
133
|
-
enqueue(*deferred_resources)
|
134
|
-
else
|
135
|
-
deferred_resources.each do |res|
|
136
|
-
overly_deferred_resource_handler.call(res)
|
137
|
-
finish(res)
|
138
|
-
end
|
139
|
-
end
|
131
|
+
next unless @ready.empty? and deferred_resources.any?
|
140
132
|
|
141
|
-
|
142
|
-
deferred_resources
|
133
|
+
if made_progress
|
134
|
+
enqueue(*deferred_resources)
|
135
|
+
else
|
136
|
+
deferred_resources.each do |res|
|
137
|
+
overly_deferred_resource_handler.call(res)
|
138
|
+
finish(res)
|
139
|
+
end
|
143
140
|
end
|
141
|
+
|
142
|
+
made_progress = false
|
143
|
+
deferred_resources = []
|
144
144
|
end
|
145
145
|
|
146
|
-
|
146
|
+
unless continue_while.call()
|
147
147
|
while (resource = next_resource)
|
148
148
|
canceled_resource_handler.call(resource)
|
149
149
|
finish(resource)
|
@@ -106,7 +106,7 @@ class Puppet::Graph::SimpleGraph
|
|
106
106
|
# decent Ruby stack.
|
107
107
|
recur = [{ :node => root }]
|
108
108
|
|
109
|
-
|
109
|
+
until recur.empty?
|
110
110
|
frame = recur.last
|
111
111
|
vertex = frame[:node]
|
112
112
|
|
@@ -171,7 +171,7 @@ class Puppet::Graph::SimpleGraph
|
|
171
171
|
|
172
172
|
# we usually have a disconnected graph, must walk all possible roots
|
173
173
|
vertices.each do |vertex|
|
174
|
-
|
174
|
+
unless state[:index][vertex] then
|
175
175
|
tarjan vertex, state
|
176
176
|
end
|
177
177
|
end
|
@@ -186,9 +186,7 @@ class Puppet::Graph::SimpleGraph
|
|
186
186
|
# time-scale.
|
187
187
|
state[:scc].select do |component|
|
188
188
|
multi_vertex_component?(component) || single_vertex_referring_to_self?(component)
|
189
|
-
end.map
|
190
|
-
component.sort
|
191
|
-
end.sort
|
189
|
+
end.map(&:sort).sort
|
192
190
|
end
|
193
191
|
|
194
192
|
# Perform a BFS on the sub graph representing the cycle, with a view to
|
@@ -212,7 +210,7 @@ class Puppet::Graph::SimpleGraph
|
|
212
210
|
|
213
211
|
# frame struct is vertex, [path]
|
214
212
|
stack = [[cycle.first, []]]
|
215
|
-
while frame = stack.shift
|
213
|
+
while frame = stack.shift # rubocop:disable Lint/AssignmentInCondition
|
216
214
|
if frame[1].member?(frame[0]) then
|
217
215
|
found << frame[1] + [frame[0]]
|
218
216
|
break if found.length >= max_paths
|
@@ -223,7 +221,7 @@ class Puppet::Graph::SimpleGraph
|
|
223
221
|
end
|
224
222
|
end
|
225
223
|
|
226
|
-
|
224
|
+
found.sort
|
227
225
|
end
|
228
226
|
|
229
227
|
# @return [Array] array of dependency cycles (arrays)
|
@@ -268,7 +266,7 @@ class Puppet::Graph::SimpleGraph
|
|
268
266
|
filename = File.join(Puppet[:graphdir], "cycles.dot")
|
269
267
|
# DOT files are assumed to be UTF-8 by default - http://www.graphviz.org/doc/info/lang.html
|
270
268
|
File.open(filename, "w:UTF-8") { |f| f.puts graph }
|
271
|
-
|
269
|
+
filename
|
272
270
|
end
|
273
271
|
|
274
272
|
# Add a new vertex to the graph.
|
@@ -330,7 +328,7 @@ class Puppet::Graph::SimpleGraph
|
|
330
328
|
end
|
331
329
|
|
332
330
|
def edges
|
333
|
-
@in_to.values.collect
|
331
|
+
@in_to.values.collect(&:values).flatten
|
334
332
|
end
|
335
333
|
|
336
334
|
def each_edge
|
@@ -449,7 +447,7 @@ class Puppet::Graph::SimpleGraph
|
|
449
447
|
# which match +dot+ properties will be used as well.
|
450
448
|
def to_dot_graph(params = {})
|
451
449
|
params['name'] ||= self.class.name.tr(':', '_')
|
452
|
-
fontsize = params['fontsize']
|
450
|
+
fontsize = params['fontsize'] || '8'
|
453
451
|
graph = (directed? ? DOT::DOTDigraph : DOT::DOTSubgraph).new(params)
|
454
452
|
edge_klass = directed? ? DOT::DOTDirectedEdge : DOT::DOTEdge
|
455
453
|
vertices.each do |v|
|
data/lib/puppet/http/client.rb
CHANGED
data/lib/puppet/http/dns.rb
CHANGED
@@ -41,7 +41,7 @@ module Puppet::HTTP
|
|
41
41
|
# @param [Symbol] service_name the key of the service we are querying
|
42
42
|
# @yields [String, Integer] server and port of selected record
|
43
43
|
def each_srv_record(domain, service_name = :puppet, &block)
|
44
|
-
if
|
44
|
+
if domain.nil? or domain.empty?
|
45
45
|
Puppet.debug "Domain not known; skipping SRV lookup"
|
46
46
|
return
|
47
47
|
end
|
@@ -118,7 +118,7 @@ module Puppet::HTTP
|
|
118
118
|
# @param [String] service_name the service whose TTL we want
|
119
119
|
# @return [Integer] the TTL for this service, in seconds
|
120
120
|
def ttl(service_name)
|
121
|
-
|
121
|
+
@record_cache[service_name].ttl
|
122
122
|
end
|
123
123
|
|
124
124
|
# Checks if the cached entry for the given service has expired.
|
@@ -128,9 +128,9 @@ module Puppet::HTTP
|
|
128
128
|
def expired?(service_name)
|
129
129
|
entry = @record_cache[service_name]
|
130
130
|
if entry
|
131
|
-
|
131
|
+
Time.now > (entry.resolution_time + entry.ttl)
|
132
132
|
else
|
133
|
-
|
133
|
+
true
|
134
134
|
end
|
135
135
|
end
|
136
136
|
|
@@ -39,7 +39,7 @@ class Puppet::HTTP::ExternalClient < Puppet::HTTP::Client
|
|
39
39
|
# (see Puppet::HTTP::Client#post)
|
40
40
|
# @api private
|
41
41
|
def post(url, body, headers: {}, params: {}, options: {}, &block)
|
42
|
-
raise ArgumentError
|
42
|
+
raise ArgumentError, "'post' requires a string 'body' argument" unless body.is_a?(String)
|
43
43
|
|
44
44
|
url = encode_query(url, params)
|
45
45
|
|
data/lib/puppet/http/factory.rb
CHANGED
data/lib/puppet/http/proxy.rb
CHANGED
@@ -6,7 +6,7 @@ require_relative '../../puppet/ssl/openssl_loader'
|
|
6
6
|
module Puppet::HTTP::Proxy
|
7
7
|
def self.proxy(uri)
|
8
8
|
if http_proxy_host && !no_proxy?(uri)
|
9
|
-
Net::HTTP.new(uri.host, uri.port,
|
9
|
+
Net::HTTP.new(uri.host, uri.port, http_proxy_host, http_proxy_port, http_proxy_user, http_proxy_password)
|
10
10
|
else
|
11
11
|
http = Net::HTTP.new(uri.host, uri.port, nil, nil, nil, nil)
|
12
12
|
# Net::HTTP defaults the proxy port even though we said not to
|
@@ -24,7 +24,7 @@ module Puppet::HTTP::Proxy
|
|
24
24
|
rescue URI::InvalidURIError
|
25
25
|
return nil
|
26
26
|
end
|
27
|
-
|
27
|
+
nil
|
28
28
|
end
|
29
29
|
|
30
30
|
# The documentation around the format of the no_proxy variable seems
|
@@ -56,11 +56,11 @@ module Puppet::HTTP::Proxy
|
|
56
56
|
# If this no_proxy entry specifies a port, we want to match it against
|
57
57
|
# the destination port. Otherwise just match hosts.
|
58
58
|
if port
|
59
|
-
no_proxy_regex =
|
59
|
+
no_proxy_regex = /#{host}:#{port}$/
|
60
60
|
dest_string = "#{dest.host}:#{dest.port}"
|
61
61
|
else
|
62
|
-
no_proxy_regex =
|
63
|
-
dest_string =
|
62
|
+
no_proxy_regex = /#{host}$/
|
63
|
+
dest_string = dest.host.to_s
|
64
64
|
end
|
65
65
|
|
66
66
|
if no_proxy_regex.match(dest_string)
|
@@ -68,11 +68,11 @@ module Puppet::HTTP::Proxy
|
|
68
68
|
end
|
69
69
|
end
|
70
70
|
|
71
|
-
|
71
|
+
false
|
72
72
|
end
|
73
73
|
|
74
74
|
def self.http_proxy_host
|
75
|
-
env =
|
75
|
+
env = http_proxy_env
|
76
76
|
|
77
77
|
if env and env.host
|
78
78
|
return env.host
|
@@ -82,21 +82,21 @@ module Puppet::HTTP::Proxy
|
|
82
82
|
return nil
|
83
83
|
end
|
84
84
|
|
85
|
-
|
85
|
+
Puppet.settings[:http_proxy_host]
|
86
86
|
end
|
87
87
|
|
88
88
|
def self.http_proxy_port
|
89
|
-
env =
|
89
|
+
env = http_proxy_env
|
90
90
|
|
91
91
|
if env and env.port
|
92
92
|
return env.port
|
93
93
|
end
|
94
94
|
|
95
|
-
|
95
|
+
Puppet.settings[:http_proxy_port]
|
96
96
|
end
|
97
97
|
|
98
98
|
def self.http_proxy_user
|
99
|
-
env =
|
99
|
+
env = http_proxy_env
|
100
100
|
|
101
101
|
if env and env.user
|
102
102
|
return env.user
|
@@ -106,11 +106,11 @@ module Puppet::HTTP::Proxy
|
|
106
106
|
return nil
|
107
107
|
end
|
108
108
|
|
109
|
-
|
109
|
+
Puppet.settings[:http_proxy_user]
|
110
110
|
end
|
111
111
|
|
112
112
|
def self.http_proxy_password
|
113
|
-
env =
|
113
|
+
env = http_proxy_env
|
114
114
|
|
115
115
|
if env and env.password
|
116
116
|
return env.password
|
@@ -120,7 +120,7 @@ module Puppet::HTTP::Proxy
|
|
120
120
|
return nil
|
121
121
|
end
|
122
122
|
|
123
|
-
|
123
|
+
Puppet.settings[:http_proxy_password]
|
124
124
|
end
|
125
125
|
|
126
126
|
def self.no_proxy
|
@@ -134,6 +134,6 @@ module Puppet::HTTP::Proxy
|
|
134
134
|
return nil
|
135
135
|
end
|
136
136
|
|
137
|
-
|
137
|
+
Puppet.settings[:no_proxy]
|
138
138
|
end
|
139
139
|
end
|
@@ -43,7 +43,7 @@ class Puppet::HTTP::Redirector
|
|
43
43
|
#
|
44
44
|
# @api private
|
45
45
|
def redirect_to(request, response, redirects)
|
46
|
-
raise Puppet::HTTP::TooManyRedirects
|
46
|
+
raise Puppet::HTTP::TooManyRedirects, request.uri if redirects >= @redirect_limit
|
47
47
|
|
48
48
|
location = parse_location(response)
|
49
49
|
url = request.uri.merge(location)
|
@@ -56,6 +56,10 @@ class Puppet::HTTP::Redirector
|
|
56
56
|
next if header.casecmp('Authorization').zero? && request.uri.host.casecmp(location.host) != 0
|
57
57
|
next if header.casecmp('Cookie').zero? && request.uri.host.casecmp(location.host) != 0
|
58
58
|
end
|
59
|
+
# Allow Net::HTTP to set its own Accept-Encoding header to avoid errors with HTTP compression.
|
60
|
+
# See https://github.com/puppetlabs/puppet/issues/9143
|
61
|
+
next if header.casecmp('Accept-Encoding').zero?
|
62
|
+
|
59
63
|
new_request[header] = value
|
60
64
|
end
|
61
65
|
|
@@ -74,7 +78,7 @@ class Puppet::HTTP::Redirector
|
|
74
78
|
|
75
79
|
def parse_location(response)
|
76
80
|
location = response['location']
|
77
|
-
raise Puppet::HTTP::ProtocolError
|
81
|
+
raise Puppet::HTTP::ProtocolError, _("Location response header is missing") unless location
|
78
82
|
|
79
83
|
URI.parse(location)
|
80
84
|
rescue URI::InvalidURIError => e
|
data/lib/puppet/http/resolver.rb
CHANGED
@@ -42,9 +42,9 @@ class Puppet::HTTP::Resolver
|
|
42
42
|
# @api public
|
43
43
|
def check_connection?(session, service, ssl_context: nil)
|
44
44
|
service.connect(ssl_context: ssl_context)
|
45
|
-
|
45
|
+
true
|
46
46
|
rescue Puppet::HTTP::ConnectionError => e
|
47
47
|
Puppet.log_exception(e, "Connection to #{service.url} failed, trying next route: #{e.message}")
|
48
|
-
|
48
|
+
false
|
49
49
|
end
|
50
50
|
end
|
@@ -48,7 +48,7 @@ class Puppet::HTTP::RetryAfterHandler
|
|
48
48
|
#
|
49
49
|
# @api private
|
50
50
|
def retry_after_interval(request, response, retries)
|
51
|
-
raise Puppet::HTTP::TooManyRetryAfters
|
51
|
+
raise Puppet::HTTP::TooManyRetryAfters, request.uri if retries >= @retry_limit
|
52
52
|
|
53
53
|
retry_after = response['Retry-After']
|
54
54
|
return nil unless retry_after
|
@@ -72,7 +72,7 @@ class Puppet::HTTP::RetryAfterHandler
|
|
72
72
|
seconds = (tm.to_time - DateTime.now.to_time).to_i
|
73
73
|
[seconds, 0].max
|
74
74
|
rescue ArgumentError
|
75
|
-
raise Puppet::HTTP::ProtocolError
|
75
|
+
raise Puppet::HTTP::ProtocolError, _("Failed to parse Retry-After header '%{retry_after}' as an integer or RFC 2822 date") % { retry_after: retry_after }
|
76
76
|
end
|
77
77
|
end
|
78
78
|
end
|
@@ -124,7 +124,7 @@ class Puppet::HTTP::Service::Ca < Puppet::HTTP::Service
|
|
124
124
|
options: { ssl_context: ssl_context }
|
125
125
|
)
|
126
126
|
|
127
|
-
raise ArgumentError
|
127
|
+
raise ArgumentError, _('SSL context must contain a client certificate.') unless ssl_context.client_cert
|
128
128
|
|
129
129
|
process_response(response)
|
130
130
|
|