puppet 5.3.7 → 5.4.0
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/CONTRIBUTING.md +42 -29
- data/README.md +8 -6
- data/ext/cert_inspector +2 -2
- data/ext/envpuppet +1 -1
- data/ext/gentoo/init.d/puppetmaster +4 -4
- data/ext/ips/puppet-agent +11 -11
- data/ext/ips/puppet-master +11 -11
- data/ext/puppet-test +1 -2
- data/ext/redhat/client.init +2 -2
- data/ext/redhat/logrotate +1 -1
- data/ext/solaris/smf/puppet +11 -11
- data/ext/solaris/smf/svc-puppetd +5 -5
- data/ext/solaris/smf/svc-puppetmasterd +5 -5
- data/ext/windows/service/daemon.rb +1 -1
- data/install.rb +2 -3
- data/lib/puppet/agent.rb +1 -1
- data/lib/puppet/application/cert.rb +1 -3
- data/lib/puppet/application/describe.rb +0 -1
- data/lib/puppet/application/device.rb +12 -99
- data/lib/puppet/application/filebucket.rb +32 -11
- data/lib/puppet/application/lookup.rb +1 -11
- data/lib/puppet/application/script.rb +261 -0
- data/lib/puppet/configurer.rb +3 -4
- data/lib/puppet/configurer/plugin_handler.rb +26 -9
- data/lib/puppet/context.rb +1 -1
- data/lib/puppet/datatypes.rb +213 -0
- data/lib/puppet/datatypes/error.rb +21 -0
- data/lib/puppet/datatypes/impl/error.rb +40 -0
- data/lib/puppet/defaults.rb +51 -20
- data/lib/puppet/environments.rb +17 -0
- data/lib/puppet/error.rb +17 -0
- data/lib/puppet/etc.rb +2 -2
- data/lib/puppet/external/pson/pure/generator.rb +1 -1
- data/lib/puppet/external/pson/pure/parser.rb +1 -1
- data/lib/puppet/face/config.rb +45 -0
- data/lib/puppet/face/epp.rb +3 -3
- data/lib/puppet/face/help/action.erb +3 -0
- data/lib/puppet/face/module/build.rb +1 -0
- data/lib/puppet/face/module/generate.rb +5 -0
- data/lib/puppet/face/module/install.rb +1 -0
- data/lib/puppet/face/module/search.rb +6 -2
- data/lib/puppet/face/module/uninstall.rb +1 -0
- data/lib/puppet/face/module/upgrade.rb +1 -0
- data/lib/puppet/face/parser.rb +0 -1
- data/lib/puppet/face/plugin.rb +1 -3
- data/lib/puppet/feature/base.rb +1 -1
- data/lib/puppet/feature/bolt.rb +3 -0
- data/lib/puppet/file_bucket/dipper.rb +1 -2
- data/lib/puppet/file_serving/http_metadata.rb +1 -1
- data/lib/puppet/file_system/uniquefile.rb +2 -2
- data/lib/puppet/forge.rb +6 -0
- data/lib/puppet/functions.rb +70 -88
- data/lib/puppet/functions/all.rb +6 -2
- data/lib/puppet/functions/annotate.rb +1 -1
- data/lib/puppet/functions/any.rb +7 -3
- data/lib/puppet/functions/contain.rb +6 -0
- data/lib/puppet/functions/convert_to.rb +32 -0
- data/lib/puppet/functions/defined.rb +0 -3
- data/lib/puppet/functions/each.rb +10 -6
- data/lib/puppet/functions/filter.rb +16 -10
- data/lib/puppet/functions/find_file.rb +0 -1
- data/lib/puppet/functions/include.rb +6 -0
- data/lib/puppet/functions/map.rb +12 -9
- data/lib/puppet/functions/module_directory.rb +41 -0
- data/lib/puppet/functions/new.rb +1 -4
- data/lib/puppet/functions/regsubst.rb +1 -1
- data/lib/puppet/functions/require.rb +6 -0
- data/lib/puppet/generate/type.rb +1 -1
- data/lib/puppet/gettext/config.rb +2 -2
- data/lib/puppet/gettext/stubs.rb +1 -1
- data/lib/puppet/indirector/catalog/compiler.rb +0 -1
- data/lib/puppet/indirector/file_bucket_file/file.rb +6 -2
- data/lib/puppet/indirector/file_server.rb +1 -1
- data/lib/puppet/indirector/node/ldap.rb +19 -3
- data/lib/puppet/indirector/request.rb +10 -6
- data/lib/puppet/indirector/rest.rb +11 -12
- data/lib/puppet/info_service/class_information_service.rb +1 -1
- data/lib/puppet/interface/action.rb +11 -0
- data/lib/puppet/interface/action_builder.rb +8 -0
- data/lib/puppet/interface/option_manager.rb +1 -1
- data/lib/puppet/loaders.rb +2 -0
- data/lib/puppet/module.rb +6 -2
- data/lib/puppet/module_tool/applications/builder.rb +4 -0
- data/lib/puppet/module_tool/applications/installer.rb +3 -0
- data/lib/puppet/module_tool/applications/uninstaller.rb +3 -0
- data/lib/puppet/module_tool/applications/unpacker.rb +1 -1
- data/lib/puppet/module_tool/applications/upgrader.rb +3 -0
- data/lib/puppet/module_tool/installed_modules.rb +1 -1
- data/lib/puppet/module_tool/metadata.rb +0 -1
- data/lib/puppet/network/authstore.rb +1 -1
- data/lib/puppet/network/http/api/indirected_routes.rb +1 -1
- data/lib/puppet/network/http/connection.rb +1 -9
- data/lib/puppet/network/http/factory.rb +0 -3
- data/lib/puppet/network/http/webrick.rb +1 -0
- data/lib/puppet/network/rights.rb +1 -1
- data/lib/puppet/node.rb +53 -0
- data/lib/puppet/node/environment.rb +1 -1
- data/lib/puppet/parameter/boolean.rb +1 -1
- data/lib/puppet/parser.rb +1 -0
- data/lib/puppet/parser/abstract_compiler.rb +36 -0
- data/lib/puppet/parser/ast/branch.rb +1 -1
- data/lib/puppet/parser/ast/pops_bridge.rb +8 -52
- data/lib/puppet/parser/compiler.rb +4 -54
- data/lib/puppet/parser/functions.rb +0 -1
- data/lib/puppet/parser/functions/create_resources.rb +6 -0
- data/lib/puppet/parser/functions/fqdn_rand.rb +6 -2
- data/lib/puppet/parser/functions/inline_template.rb +6 -0
- data/lib/puppet/parser/functions/new.rb +47 -32
- data/lib/puppet/parser/functions/realize.rb +6 -0
- data/lib/puppet/parser/functions/return.rb +1 -22
- data/lib/puppet/parser/functions/reverse_each.rb +1 -1
- data/lib/puppet/parser/functions/scanf.rb +1 -1
- data/lib/puppet/parser/functions/sha256.rb +5 -0
- data/lib/puppet/parser/functions/tag.rb +6 -0
- data/lib/puppet/parser/functions/tagged.rb +6 -0
- data/lib/puppet/parser/functions/template.rb +5 -0
- data/lib/puppet/parser/scope.rb +28 -4
- data/lib/puppet/parser/script_compiler.rb +118 -0
- data/lib/puppet/parser/type_loader.rb +1 -1
- data/lib/puppet/pops.rb +1 -1
- data/lib/puppet/pops/evaluator/access_operator.rb +38 -4
- data/lib/puppet/pops/evaluator/closure.rb +12 -4
- data/lib/puppet/pops/evaluator/compare_operator.rb +4 -4
- data/lib/puppet/pops/evaluator/epp_evaluator.rb +13 -0
- data/lib/puppet/pops/evaluator/evaluator_impl.rb +38 -10
- data/lib/puppet/pops/evaluator/literal_evaluator.rb +1 -1
- data/lib/puppet/pops/evaluator/runtime3_converter.rb +1 -1
- data/lib/puppet/pops/evaluator/runtime3_support.rb +2 -3
- data/lib/puppet/pops/functions/dispatch.rb +6 -5
- data/lib/puppet/pops/functions/function.rb +2 -2
- data/lib/puppet/pops/issues.rb +34 -2
- data/lib/puppet/pops/loader/base_loader.rb +10 -0
- data/lib/puppet/pops/loader/dependency_loader.rb +7 -0
- data/lib/puppet/pops/loader/loader.rb +21 -2
- data/lib/puppet/pops/loader/loader_paths.rb +180 -30
- data/lib/puppet/pops/loader/module_loaders.rb +202 -33
- data/lib/puppet/pops/loader/puppet_plan_instantiator.rb +84 -0
- data/lib/puppet/pops/loader/puppet_resource_type_impl_instantiator.rb +9 -9
- data/lib/puppet/pops/loader/ruby_data_type_instantiator.rb +40 -0
- data/lib/puppet/pops/loader/runtime3_type_loader.rb +6 -1
- data/lib/puppet/pops/loader/static_loader.rb +23 -8
- data/lib/puppet/pops/loader/task_instantiator.rb +69 -0
- data/lib/puppet/pops/loader/type_definition_instantiator.rb +4 -0
- data/lib/puppet/pops/loaders.rb +122 -11
- data/lib/puppet/pops/lookup/data_dig_function_provider.rb +1 -1
- data/lib/puppet/pops/lookup/interpolation.rb +1 -1
- data/lib/puppet/pops/lookup/lookup_adapter.rb +0 -1
- data/lib/puppet/pops/model/ast.pp +3 -0
- data/lib/puppet/pops/model/ast.rb +34 -1
- data/lib/puppet/pops/model/factory.rb +30 -3
- data/lib/puppet/pops/model/model_label_provider.rb +1 -0
- data/lib/puppet/pops/model/model_tree_dumper.rb +12 -1
- data/lib/puppet/pops/model/tree_dumper.rb +1 -1
- data/lib/puppet/pops/parser/code_merger.rb +2 -2
- data/lib/puppet/pops/parser/egrammar.ra +44 -15
- data/lib/puppet/pops/parser/eparser.rb +1687 -1571
- data/lib/puppet/pops/parser/epp_support.rb +1 -3
- data/lib/puppet/pops/parser/evaluating_parser.rb +1 -1
- data/lib/puppet/pops/parser/interpolation_support.rb +2 -2
- data/lib/puppet/pops/parser/lexer2.rb +4 -4
- data/lib/puppet/pops/parser/lexer_support.rb +2 -2
- data/lib/puppet/pops/parser/locatable.rb +1 -1
- data/lib/puppet/pops/parser/locator.rb +7 -13
- data/lib/puppet/pops/parser/parser_support.rb +3 -3
- data/lib/puppet/pops/parser/slurp_support.rb +0 -3
- data/lib/puppet/pops/pcore.rb +45 -0
- data/lib/puppet/pops/resource/param.rb +1 -1
- data/lib/puppet/pops/resource/resource_type_impl.rb +1 -1
- data/lib/puppet/pops/serialization/abstract_reader.rb +4 -0
- data/lib/puppet/pops/serialization/abstract_writer.rb +6 -0
- data/lib/puppet/pops/serialization/extension.rb +1 -0
- data/lib/puppet/pops/serialization/from_data_converter.rb +64 -10
- data/lib/puppet/pops/serialization/json_path.rb +2 -1
- data/lib/puppet/pops/serialization/object.rb +3 -4
- data/lib/puppet/pops/serialization/serializer.rb +2 -1
- data/lib/puppet/pops/serialization/to_data_converter.rb +7 -3
- data/lib/puppet/pops/time/timespan.rb +1 -1
- data/lib/puppet/pops/types/iterable.rb +38 -9
- data/lib/puppet/pops/types/p_init_type.rb +1 -1
- data/lib/puppet/pops/types/p_meta_type.rb +4 -0
- data/lib/puppet/pops/types/p_object_type.rb +146 -14
- data/lib/puppet/pops/types/p_object_type_extension.rb +218 -0
- data/lib/puppet/pops/types/p_sem_ver_range_type.rb +0 -1
- data/lib/puppet/pops/types/p_sem_ver_type.rb +10 -2
- data/lib/puppet/pops/types/p_type_set_type.rb +0 -1
- data/lib/puppet/pops/types/p_uri_type.rb +190 -0
- data/lib/puppet/pops/types/puppet_object.rb +15 -1
- data/lib/puppet/pops/types/ruby_generator.rb +46 -54
- data/lib/puppet/pops/types/string_converter.rb +22 -1
- data/lib/puppet/pops/types/type_acceptor.rb +1 -1
- data/lib/puppet/pops/types/type_calculator.rb +13 -4
- data/lib/puppet/pops/types/type_factory.rb +29 -5
- data/lib/puppet/pops/types/type_formatter.rb +67 -4
- data/lib/puppet/pops/types/type_parser.rb +92 -4
- data/lib/puppet/pops/types/type_with_members.rb +43 -0
- data/lib/puppet/pops/types/types.rb +212 -80
- data/lib/puppet/pops/validation/checker4_0.rb +10 -6
- data/lib/puppet/pops/validation/tasks_checker.rb +60 -0
- data/lib/puppet/pops/validation/validator_factory_4_0.rb +6 -1
- data/lib/puppet/property.rb +1 -1
- data/lib/puppet/provider.rb +18 -8
- data/lib/puppet/provider/augeas/augeas.rb +3 -4
- data/lib/puppet/provider/exec.rb +0 -2
- data/lib/puppet/provider/group/groupadd.rb +25 -1
- data/lib/puppet/provider/group/windows_adsi.rb +7 -4
- data/lib/puppet/provider/mount.rb +25 -8
- data/lib/puppet/provider/nameservice.rb +9 -4
- data/lib/puppet/provider/nameservice/directoryservice.rb +3 -3
- data/lib/puppet/provider/nameservice/objectadd.rb +13 -24
- data/lib/puppet/provider/nameservice/pw.rb +14 -14
- data/lib/puppet/provider/package/appdmg.rb +0 -1
- data/lib/puppet/provider/package/apple.rb +0 -1
- data/lib/puppet/provider/package/gem.rb +2 -2
- data/lib/puppet/provider/package/macports.rb +2 -2
- data/lib/puppet/provider/package/pkg.rb +3 -0
- data/lib/puppet/provider/package/pkgdmg.rb +0 -1
- data/lib/puppet/provider/package/portage.rb +0 -1
- data/lib/puppet/provider/package/yum.rb +23 -8
- data/lib/puppet/provider/package/zypper.rb +2 -2
- data/lib/puppet/provider/scheduled_task/win32_taskscheduler.rb +2 -2
- data/lib/puppet/provider/service/init.rb +1 -0
- data/lib/puppet/provider/service/launchd.rb +6 -7
- data/lib/puppet/provider/service/redhat.rb +3 -2
- data/lib/puppet/provider/service/systemd.rb +2 -2
- data/lib/puppet/provider/ssh_authorized_key/parsed.rb +1 -1
- data/lib/puppet/provider/user/aix.rb +3 -2
- data/lib/puppet/provider/user/openbsd.rb +1 -1
- data/lib/puppet/provider/user/pw.rb +1 -1
- data/lib/puppet/provider/user/user_role_add.rb +7 -1
- data/lib/puppet/provider/user/useradd.rb +36 -6
- data/lib/puppet/provider/user/windows_adsi.rb +1 -1
- data/lib/puppet/provider/yumrepo/inifile.rb +2 -4
- data/lib/puppet/provider/zfs/zfs.rb +23 -3
- data/lib/puppet/provider/zpool/zpool.rb +1 -1
- data/lib/puppet/reference/configuration.rb +0 -2
- data/lib/puppet/reference/type.rb +0 -1
- data/lib/puppet/resource.rb +1 -2
- data/lib/puppet/resource/catalog.rb +1 -1
- data/lib/puppet/resource/status.rb +0 -1
- data/lib/puppet/resource/type.rb +4 -4
- data/lib/puppet/resource/type_collection.rb +1 -1
- data/lib/puppet/settings/base_setting.rb +1 -1
- data/lib/puppet/settings/environment_conf.rb +0 -1
- data/lib/puppet/settings/ini_file.rb +66 -12
- data/lib/puppet/ssl/certificate_authority.rb +1 -1
- data/lib/puppet/ssl/certificate_request.rb +2 -2
- data/lib/puppet/ssl/certificate_revocation_list.rb +2 -1
- data/lib/puppet/ssl/certificate_signer.rb +11 -0
- data/lib/puppet/ssl/host.rb +2 -2
- data/lib/puppet/syntax_checkers/base64.rb +1 -1
- data/lib/puppet/transaction.rb +37 -14
- data/lib/puppet/transaction/report.rb +3 -1
- data/lib/puppet/type.rb +17 -4
- data/lib/puppet/type/cron.rb +1 -1
- data/lib/puppet/type/exec.rb +5 -4
- data/lib/puppet/type/file.rb +3 -3
- data/lib/puppet/type/file/checksum.rb +7 -1
- data/lib/puppet/type/file/checksum_value.rb +4 -3
- data/lib/puppet/type/group.rb +3 -0
- data/lib/puppet/type/k5login.rb +101 -0
- data/lib/puppet/type/macauthorization.rb +1 -1
- data/lib/puppet/type/mount.rb +6 -2
- data/lib/puppet/type/tidy.rb +6 -4
- data/lib/puppet/type/user.rb +26 -39
- data/lib/puppet/type/yumrepo.rb +9 -0
- data/lib/puppet/type/zfs.rb +4 -0
- data/lib/puppet/util.rb +8 -15
- data/lib/puppet/util/character_encoding.rb +2 -2
- data/lib/puppet/util/checksums.rb +82 -1
- data/lib/puppet/util/errors.rb +0 -2
- data/lib/puppet/util/filetype.rb +2 -2
- data/lib/puppet/util/json_lockfile.rb +1 -1
- data/lib/puppet/util/log.rb +1 -1
- data/lib/puppet/util/log/destinations.rb +10 -1
- data/lib/puppet/util/monkey_patches.rb +1 -1
- data/lib/puppet/util/network_device/cisco/device.rb +5 -5
- data/lib/puppet/util/network_device/config.rb +2 -3
- data/lib/puppet/util/platform.rb +13 -0
- data/lib/puppet/util/plist.rb +4 -4
- data/lib/puppet/util/rdoc/generators/puppet_generator.rb +2 -2
- data/lib/puppet/util/rdoc/parser/puppet_parser_rdoc2.rb +1 -1
- data/lib/puppet/util/reference.rb +8 -1
- data/lib/puppet/util/windows/adsi.rb +18 -15
- data/lib/puppet/util/windows/principal.rb +6 -7
- data/lib/puppet/util/windows/process.rb +1 -1
- data/lib/puppet/util/windows/registry.rb +2 -2
- data/lib/puppet/util/windows/sid.rb +7 -62
- data/lib/puppet/vendor/deep_merge/README.md +2 -2
- data/lib/puppet/vendor/pathspec/lib/pathspec/gitignorespec.rb +18 -18
- data/lib/puppet/vendor/semantic_puppet/lib/semantic_puppet/version.rb +2 -2
- data/lib/puppet/vendor/semantic_puppet/lib/semantic_puppet/version_range.rb +5 -5
- data/lib/puppet/vendor/semantic_puppet/locales/config.yaml +1 -1
- data/lib/puppet/version.rb +1 -1
- data/lib/puppet_pal.rb +874 -0
- data/locales/ja/puppet.po +140 -163
- data/locales/puppet.pot +940 -597
- data/man/man5/puppet.conf.5 +16 -91
- data/man/man8/puppet-agent.8 +2 -6
- data/man/man8/puppet-apply.8 +2 -2
- data/man/man8/puppet-ca.8 +1 -1
- data/man/man8/puppet-catalog.8 +1 -1
- data/man/man8/puppet-cert.8 +1 -1
- data/man/man8/puppet-certificate.8 +1 -1
- data/man/man8/puppet-certificate_request.8 +1 -1
- data/man/man8/puppet-certificate_revocation_list.8 +1 -1
- data/man/man8/puppet-config.8 +1 -1
- data/man/man8/puppet-describe.8 +1 -1
- data/man/man8/puppet-device.8 +11 -33
- 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 +4 -22
- data/man/man8/puppet-generate.8 +1 -1
- data/man/man8/puppet-help.8 +1 -1
- data/man/man8/puppet-key.8 +1 -1
- data/man/man8/puppet-lookup.8 +1 -1
- data/man/man8/puppet-man.8 +1 -1
- data/man/man8/puppet-master.8 +1 -1
- data/man/man8/puppet-module.8 +2 -11
- data/man/man8/puppet-node.8 +1 -1
- data/man/man8/puppet-parser.8 +1 -1
- data/man/man8/puppet-plugin.8 +1 -1
- data/man/man8/puppet-report.8 +1 -1
- data/man/man8/puppet-resource.8 +1 -1
- data/man/man8/puppet-status.8 +1 -1
- data/man/man8/puppet.8 +2 -2
- data/spec/integration/application/lookup_spec.rb +0 -21
- data/spec/integration/parser/compiler_spec.rb +18 -0
- data/spec/integration/parser/script_compiler_spec.rb +113 -0
- data/spec/integration/provider/mount_spec.rb +2 -0
- data/spec/integration/type/file_spec.rb +11 -3
- data/spec/integration/util/windows/adsi_spec.rb +1 -86
- data/spec/integration/util/windows/principal_spec.rb +1 -10
- data/spec/shared_contexts/checksum.rb +4 -1
- data/spec/shared_contexts/digests.rb +46 -1
- data/spec/shared_contexts/types_setup.rb +8 -3
- data/spec/unit/agent_spec.rb +2 -2
- data/spec/unit/application/cert_spec.rb +5 -17
- data/spec/unit/application/device_spec.rb +2 -96
- data/spec/unit/application/filebucket_spec.rb +18 -4
- data/spec/unit/configurer/plugin_handler_spec.rb +5 -32
- data/spec/unit/configurer_spec.rb +3 -3
- data/spec/unit/datatypes_spec.rb +304 -0
- data/spec/unit/defaults_spec.rb +41 -20
- data/spec/unit/face/config_spec.rb +46 -1
- data/spec/unit/face/epp_face_spec.rb +7 -3
- data/spec/unit/face/module/search_spec.rb +11 -0
- data/spec/unit/face/parser_spec.rb +2 -2
- data/spec/unit/file_bucket/dipper_spec.rb +12 -1
- data/spec/unit/forge/module_release_spec.rb +70 -0
- data/spec/unit/functions/break_spec.rb +34 -2
- data/spec/unit/functions/contain_spec.rb +1 -0
- data/spec/unit/functions/convert_to_spec.rb +22 -0
- data/spec/unit/functions/epp_spec.rb +5 -0
- data/spec/unit/functions/include_spec.rb +15 -0
- data/spec/unit/functions/module_directory_spec.rb +43 -0
- data/spec/unit/functions/new_spec.rb +14 -14
- data/spec/unit/functions/require_spec.rb +2 -0
- data/spec/unit/functions/shared.rb +12 -0
- data/spec/unit/functions/step_spec.rb +1 -1
- data/spec/unit/functions4_spec.rb +49 -4
- data/spec/unit/indirector/catalog/compiler_spec.rb +3 -3
- data/spec/unit/indirector/file_bucket_file/file_spec.rb +148 -94
- data/spec/unit/indirector/node/ldap_spec.rb +15 -12
- data/spec/unit/indirector/rest_spec.rb +0 -43
- data/spec/unit/interface/action_spec.rb +33 -0
- data/spec/unit/module_tool/applications/builder_spec.rb +7 -0
- data/spec/unit/module_tool/applications/installer_spec.rb +8 -0
- data/spec/unit/module_tool/applications/uninstaller_spec.rb +8 -0
- data/spec/unit/module_tool/applications/upgrader_spec.rb +6 -0
- data/spec/unit/network/http/connection_spec.rb +1 -1
- data/spec/unit/network/http/factory_spec.rb +28 -35
- data/spec/unit/parser/compiler_spec.rb +0 -8
- data/spec/unit/parser/environment_compiler_spec.rb +36 -0
- data/spec/unit/parser/functions/create_resources_spec.rb +9 -0
- data/spec/unit/parser/functions/inline_template_spec.rb +7 -0
- data/spec/unit/parser/functions/realize_spec.rb +9 -0
- data/spec/unit/parser/functions/tag_spec.rb +7 -0
- data/spec/unit/parser/functions/tagged_spec.rb +25 -0
- data/spec/unit/parser/functions/template_spec.rb +8 -0
- data/spec/unit/parser/scope_spec.rb +19 -0
- data/spec/unit/pops/evaluator/conditionals_spec.rb +1 -1
- data/spec/unit/pops/loaders/loader_spec.rb +516 -0
- data/spec/unit/pops/loaders/loaders_spec.rb +11 -0
- data/spec/unit/pops/loaders/module_loaders_spec.rb +43 -0
- data/spec/unit/pops/loaders/static_loader_spec.rb +15 -7
- data/spec/unit/pops/model/model_spec.rb +5 -0
- data/spec/unit/pops/parser/lexer2_spec.rb +15 -0
- data/spec/unit/pops/parser/locator_spec.rb +20 -0
- data/spec/unit/pops/parser/parse_basic_expressions_spec.rb +33 -0
- data/spec/unit/pops/parser/parse_calls_spec.rb +28 -0
- data/spec/unit/pops/parser/parse_conditionals_spec.rb +12 -0
- data/spec/unit/pops/parser/parse_plan_spec.rb +48 -0
- data/spec/unit/pops/serialization/packer_spec.rb +8 -0
- data/spec/unit/pops/serialization/serialization_spec.rb +30 -0
- data/spec/unit/pops/serialization/to_from_hr_spec.rb +31 -0
- data/spec/unit/pops/types/error_spec.rb +207 -0
- data/spec/unit/pops/types/p_init_type_spec.rb +98 -0
- data/spec/unit/pops/types/p_object_type_spec.rb +275 -10
- data/spec/unit/pops/types/p_uri_type_spec.rb +191 -0
- data/spec/unit/pops/types/ruby_generator_spec.rb +82 -44
- data/spec/unit/pops/types/task_spec.rb +353 -0
- data/spec/unit/pops/types/type_calculator_spec.rb +76 -5
- data/spec/unit/pops/types/type_formatter_spec.rb +31 -13
- data/spec/unit/pops/types/type_parser_spec.rb +13 -1
- data/spec/unit/pops/types/types_spec.rb +60 -0
- data/spec/unit/pops/validator/validator_spec.rb +76 -0
- data/spec/unit/provider/group/groupadd_spec.rb +77 -1
- data/spec/unit/provider/group/pw_spec.rb +4 -4
- data/spec/unit/provider/group/windows_adsi_spec.rb +22 -79
- data/spec/unit/provider/mount_spec.rb +18 -5
- data/spec/unit/provider/nameservice_spec.rb +5 -5
- data/spec/unit/provider/package/dnf_spec.rb +2 -2
- data/spec/unit/provider/package/gem_spec.rb +1 -1
- data/spec/unit/provider/package/pkg_spec.rb +3 -0
- data/spec/unit/provider/package/yum_spec.rb +40 -0
- data/spec/unit/provider/service/launchd_spec.rb +2 -1
- data/spec/unit/provider/service/redhat_spec.rb +5 -0
- data/spec/unit/provider/service/systemd_spec.rb +1 -1
- data/spec/unit/provider/user/hpux_spec.rb +2 -2
- data/spec/unit/provider/user/openbsd_spec.rb +2 -2
- data/spec/unit/provider/user/pw_spec.rb +14 -14
- data/spec/unit/provider/user/user_role_add_spec.rb +19 -2
- data/spec/unit/provider/user/useradd_spec.rb +188 -22
- data/spec/unit/provider/user/windows_adsi_spec.rb +4 -4
- data/spec/unit/provider/zfs/zfs_spec.rb +55 -1
- data/spec/unit/provider_spec.rb +48 -0
- data/spec/unit/puppet_pal_2pec.rb +1005 -0
- data/spec/unit/puppet_pal_spec.rb +11 -0
- data/spec/unit/settings/ini_file_spec.rb +313 -2
- data/spec/unit/ssl/certificate_request_spec.rb +42 -1
- data/spec/unit/ssl/certificate_revocation_list_spec.rb +2 -1
- data/spec/unit/transaction/report_spec.rb +1 -0
- data/spec/unit/transaction_spec.rb +112 -21
- data/spec/unit/type/file/checksum_spec.rb +20 -0
- data/spec/unit/type/file_spec.rb +8 -0
- data/spec/unit/type/group_spec.rb +8 -0
- data/spec/unit/type/k5login_spec.rb +22 -1
- data/spec/unit/type/scheduled_task_spec.rb +15 -0
- data/spec/unit/type/user_spec.rb +11 -1
- data/spec/unit/type/yumrepo_spec.rb +5 -0
- data/spec/unit/util/checksums_spec.rb +3 -3
- data/spec/unit/util/log/destinations_spec.rb +14 -0
- data/spec/unit/util/network_device/cisco/device_spec.rb +1 -1
- data/spec/unit/util/plist_spec.rb +3 -3
- data/spec/unit/util/windows/adsi_spec.rb +27 -31
- data/spec/unit/util/windows/sid_spec.rb +15 -86
- data/spec/unit/util_spec.rb +17 -3
- data/tasks/manpages.rake +1 -1
- metadata +216 -178
- data/lib/puppet/bindings.rb +0 -148
- data/lib/puppet/configurer/downloader_factory.rb +0 -44
- data/spec/unit/configurer/downloader_factory_spec.rb +0 -129
@@ -218,7 +218,7 @@ class Puppet::Transaction::Report
|
|
218
218
|
@external_times ||= {}
|
219
219
|
@host = Puppet[:node_name_value]
|
220
220
|
@time = Time.now
|
221
|
-
@report_format =
|
221
|
+
@report_format = 8
|
222
222
|
@puppet_version = Puppet.version
|
223
223
|
@configuration_version = configuration_version
|
224
224
|
@transaction_uuid = transaction_uuid
|
@@ -243,6 +243,7 @@ class Puppet::Transaction::Report
|
|
243
243
|
@transaction_uuid = data['transaction_uuid']
|
244
244
|
@environment = data['environment']
|
245
245
|
@status = data['status']
|
246
|
+
@transaction_completed = data['transaction_completed']
|
246
247
|
@noop = data['noop']
|
247
248
|
@noop_pending = data['noop_pending']
|
248
249
|
@host = data['host']
|
@@ -304,6 +305,7 @@ class Puppet::Transaction::Report
|
|
304
305
|
'report_format' => @report_format,
|
305
306
|
'puppet_version' => @puppet_version,
|
306
307
|
'status' => @status,
|
308
|
+
'transaction_completed' => @transaction_completed,
|
307
309
|
'noop' => @noop,
|
308
310
|
'noop_pending' => @noop_pending,
|
309
311
|
'environment' => @environment,
|
data/lib/puppet/type.rb
CHANGED
@@ -1336,9 +1336,9 @@ class Type
|
|
1336
1336
|
|
1337
1337
|
def properties_to_audit(list)
|
1338
1338
|
if !list.kind_of?(Array) && list.to_sym == :all
|
1339
|
-
|
1339
|
+
all_properties
|
1340
1340
|
else
|
1341
|
-
|
1341
|
+
Array(list).collect { |p| p.to_sym }
|
1342
1342
|
end
|
1343
1343
|
end
|
1344
1344
|
end
|
@@ -1538,12 +1538,25 @@ class Type
|
|
1538
1538
|
:event => self.class.events,
|
1539
1539
|
:callback => method
|
1540
1540
|
}
|
1541
|
-
self.debug { "subscribes to #{related_resource.ref}" }
|
1542
1541
|
else
|
1543
1542
|
# If there's no callback, there's no point in even adding
|
1544
1543
|
# a label.
|
1545
1544
|
subargs = nil
|
1546
|
-
|
1545
|
+
end
|
1546
|
+
|
1547
|
+
## Corrected syntax of debug statement to reflect the way this was called.
|
1548
|
+
# i.e. before, after, subscribe, notify
|
1549
|
+
self.debug do
|
1550
|
+
relation = case self.class.name
|
1551
|
+
when "subscribe"
|
1552
|
+
"subscribes"
|
1553
|
+
when "notify"
|
1554
|
+
"notifies"
|
1555
|
+
else
|
1556
|
+
self.class.name
|
1557
|
+
end
|
1558
|
+
|
1559
|
+
"#{relation} to #{related_resource.ref}"
|
1547
1560
|
end
|
1548
1561
|
|
1549
1562
|
Puppet::Relationship.new(source, target, subargs)
|
data/lib/puppet/type/cron.rb
CHANGED
@@ -12,7 +12,7 @@ Puppet::Type.newtype(:cron) do
|
|
12
12
|
by Puppet with cron resources.
|
13
13
|
|
14
14
|
If an existing crontab entry happens to match the scheduling and command of a
|
15
|
-
cron resource that has never been
|
15
|
+
cron resource that has never been synced, Puppet will defer to the existing
|
16
16
|
crontab entry and will not create a new entry tagged with the `# Puppet Name: `
|
17
17
|
comment.
|
18
18
|
|
data/lib/puppet/type/exec.rb
CHANGED
@@ -256,10 +256,11 @@ module Puppet
|
|
256
256
|
end
|
257
257
|
|
258
258
|
newparam(:environment) do
|
259
|
-
desc "
|
260
|
-
command.
|
261
|
-
|
262
|
-
specified as an
|
259
|
+
desc "An array of any additional environment variables you want to set for a
|
260
|
+
command. e.g.: `[ 'HOME=/root', 'MAIL=root@example.com']`
|
261
|
+
Note that if you use this to set PATH, it will override the `path`
|
262
|
+
attribute. Multiple environment variables should be specified as an
|
263
|
+
array."
|
263
264
|
|
264
265
|
validate do |values|
|
265
266
|
values = [values] unless values.is_a? Array
|
data/lib/puppet/type/file.rb
CHANGED
@@ -829,11 +829,11 @@ Puppet::Type.newtype(:file) do
|
|
829
829
|
|
830
830
|
@stat = begin
|
831
831
|
Puppet::FileSystem.send(method, self[:path])
|
832
|
-
rescue Errno::ENOENT
|
832
|
+
rescue Errno::ENOENT
|
833
833
|
nil
|
834
|
-
rescue Errno::ENOTDIR
|
834
|
+
rescue Errno::ENOTDIR
|
835
835
|
nil
|
836
|
-
rescue Errno::EACCES
|
836
|
+
rescue Errno::EACCES
|
837
837
|
warning _("Could not stat; permission denied")
|
838
838
|
nil
|
839
839
|
end
|
@@ -9,12 +9,18 @@ Puppet::Type.type(:file).newparam(:checksum) do
|
|
9
9
|
|
10
10
|
The default checksum type is md5."
|
11
11
|
|
12
|
-
newvalues "md5", "md5lite", "sha256", "sha256lite", "mtime", "ctime", "none"
|
12
|
+
newvalues "md5", "md5lite", "sha224", "sha256", "sha256lite", "sha384", "sha512", "mtime", "ctime", "none"
|
13
13
|
|
14
14
|
defaultto do
|
15
15
|
Puppet[:digest_algorithm].to_sym
|
16
16
|
end
|
17
17
|
|
18
|
+
validate do |value|
|
19
|
+
if Puppet::Util::Platform.fips_enabled? && (value == :md5 || value == :md5lite)
|
20
|
+
raise ArgumentError, _("MD5 is not supported in FIPS mode")
|
21
|
+
end
|
22
|
+
end
|
23
|
+
|
18
24
|
def sum(content)
|
19
25
|
content = content.is_a?(Puppet::Pops::Types::PBinaryType::Binary) ? content.binary_buffer : content
|
20
26
|
type = digest_algorithm()
|
@@ -6,9 +6,10 @@ module Puppet
|
|
6
6
|
include Puppet::Util::Checksums
|
7
7
|
include Puppet::DataSync
|
8
8
|
|
9
|
-
desc "The checksum of the source contents. Only md5
|
10
|
-
specifying this parameter. If this parameter is set,
|
11
|
-
assumed to be false, and ownership and permissions
|
9
|
+
desc "The checksum of the source contents. Only md5, sha256, sha224, sha384 and sha512
|
10
|
+
are supported when specifying this parameter. If this parameter is set,
|
11
|
+
source_permissions will be assumed to be false, and ownership and permissions
|
12
|
+
will not be read from source."
|
12
13
|
|
13
14
|
def insync?(is)
|
14
15
|
# If checksum_value and source are specified, manage the file contents.
|
data/lib/puppet/type/group.rb
CHANGED
data/lib/puppet/type/k5login.rb
CHANGED
@@ -1,5 +1,6 @@
|
|
1
1
|
# Plug-in type for handling k5login files
|
2
2
|
require 'puppet/util'
|
3
|
+
require 'puppet/util/selinux'
|
3
4
|
|
4
5
|
Puppet::Type.newtype(:k5login) do
|
5
6
|
@doc = "Manage the `.k5login` file for a user. Specify the full path to
|
@@ -31,10 +32,60 @@ Puppet::Type.newtype(:k5login) do
|
|
31
32
|
defaultto { "644" }
|
32
33
|
end
|
33
34
|
|
35
|
+
# To manage the selinux user of the file
|
36
|
+
newproperty(:seluser) do
|
37
|
+
desc "What the SELinux user component of the context of the file should be.
|
38
|
+
Any valid SELinux user component is accepted. For example `user_u`.
|
39
|
+
If not specified it defaults to the value returned by matchpathcon for
|
40
|
+
the file, if any exists. Only valid on systems with SELinux support
|
41
|
+
enabled."
|
42
|
+
|
43
|
+
defaultto { "user_u" }
|
44
|
+
end
|
45
|
+
|
46
|
+
# To manage the selinux role of the file
|
47
|
+
newproperty(:selrole) do
|
48
|
+
desc "What the SELinux role component of the context of the file should be.
|
49
|
+
Any valid SELinux role component is accepted. For example `role_r`.
|
50
|
+
If not specified it defaults to the value returned by matchpathcon for
|
51
|
+
the file, if any exists. Only valid on systems with SELinux support
|
52
|
+
enabled."
|
53
|
+
|
54
|
+
defaultto { "object_r" }
|
55
|
+
end
|
56
|
+
|
57
|
+
# To manage the selinux type of the file
|
58
|
+
newproperty(:seltype) do
|
59
|
+
desc "What the SELinux type component of the context of the file should be.
|
60
|
+
Any valid SELinux type component is accepted. For example `tmp_t`.
|
61
|
+
If not specified it defaults to the value returned by matchpathcon for
|
62
|
+
the file, if any exists. Only valid on systems with SELinux support
|
63
|
+
enabled."
|
64
|
+
|
65
|
+
# to my knowledge, `krb5_home_t` is the only valid type for .k5login
|
66
|
+
defaultto { "krb5_home_t" }
|
67
|
+
end
|
68
|
+
|
69
|
+
# To manage the selinux range of the file
|
70
|
+
newproperty(:selrange) do
|
71
|
+
desc "What the SELinux range component of the context of the file should be.
|
72
|
+
Any valid SELinux range component is accepted. For example `s0` or
|
73
|
+
`SystemHigh`. If not specified it defaults to the value returned by
|
74
|
+
matchpathcon for the file, if any exists. Only valid on systems with
|
75
|
+
SELinux support enabled and that have support for MCS (Multi-Category
|
76
|
+
Security)."
|
77
|
+
|
78
|
+
defaultto { "s0" }
|
79
|
+
end
|
80
|
+
|
81
|
+
# # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #
|
82
|
+
|
34
83
|
provide(:k5login) do
|
35
84
|
desc "The k5login provider is the only provider for the k5login
|
36
85
|
type."
|
37
86
|
|
87
|
+
include Puppet::Util::SELinux
|
88
|
+
|
38
89
|
# Does this file exist?
|
39
90
|
def exists?
|
40
91
|
Puppet::FileSystem.exist?(@resource[:name])
|
@@ -78,6 +129,56 @@ Puppet::Type.newtype(:k5login) do
|
|
78
129
|
File.chmod(Integer("0#{value}"), @resource[:name])
|
79
130
|
end
|
80
131
|
|
132
|
+
# Set the file seluser
|
133
|
+
def seluser
|
134
|
+
if selinux_support?
|
135
|
+
context = get_selinux_current_context(@resource[:name])
|
136
|
+
return parse_selinux_context(:seluser, context)
|
137
|
+
end
|
138
|
+
end
|
139
|
+
|
140
|
+
def seluser=(value)
|
141
|
+
set_selinux_context(@resource[:name], value, :seluser)
|
142
|
+
end
|
143
|
+
|
144
|
+
# Set the file selrole
|
145
|
+
def selrole
|
146
|
+
if selinux_support?
|
147
|
+
context = get_selinux_current_context(@resource[:name])
|
148
|
+
return parse_selinux_context(:selrole, context)
|
149
|
+
end
|
150
|
+
end
|
151
|
+
|
152
|
+
# Set the file seltype
|
153
|
+
def selrole=(value)
|
154
|
+
set_selinux_context(@resource[:name], value, :selrole)
|
155
|
+
end
|
156
|
+
|
157
|
+
# Set the file seltype
|
158
|
+
def seltype
|
159
|
+
if selinux_support?
|
160
|
+
context = get_selinux_current_context(@resource[:name])
|
161
|
+
return parse_selinux_context(:seltype, context)
|
162
|
+
end
|
163
|
+
end
|
164
|
+
|
165
|
+
# Set the file selrange
|
166
|
+
def seltype=(value)
|
167
|
+
set_selinux_context(@resource[:name], value, :seltype)
|
168
|
+
end
|
169
|
+
|
170
|
+
# Set the file selrange
|
171
|
+
def selrange
|
172
|
+
if selinux_support?
|
173
|
+
context = get_selinux_current_context(@resource[:name])
|
174
|
+
return parse_selinux_context(:selrange, context)
|
175
|
+
end
|
176
|
+
end
|
177
|
+
|
178
|
+
def selrange=(value)
|
179
|
+
set_selinux_context(@resource[:name], value, :selrange)
|
180
|
+
end
|
181
|
+
|
81
182
|
private
|
82
183
|
def write(value)
|
83
184
|
Puppet::Util.replace_file(@resource[:name], 0644) do |f|
|
@@ -1,7 +1,7 @@
|
|
1
1
|
Puppet::Type.newtype(:macauthorization) do
|
2
2
|
|
3
3
|
@doc = "Manage the Mac OS X authorization database. See the
|
4
|
-
[Apple developer site](https://developer.apple.com/documentation/Security/Conceptual/Security_Overview/
|
4
|
+
[Apple developer site](https://developer.apple.com/library/content/documentation/Security/Conceptual/Security_Overview/AuthenticationAndAuthorization/AuthenticationAndAuthorization.html)
|
5
5
|
for more information.
|
6
6
|
|
7
7
|
Note that authorization store directives with hyphens in their names have
|
data/lib/puppet/type/mount.rb
CHANGED
@@ -173,8 +173,12 @@ module Puppet
|
|
173
173
|
|
174
174
|
newproperty(:options) do
|
175
175
|
desc "A single string containing options for the mount, as they would
|
176
|
-
appear in fstab. For many platforms this is a comma
|
177
|
-
Consult the fstab(5) man page for system-specific details.
|
176
|
+
appear in fstab on Linux. For many platforms this is a comma-delimited
|
177
|
+
string. Consult the fstab(5) man page for system-specific details.
|
178
|
+
AIX options other than dev, nodename, or vfs can be defined here. If
|
179
|
+
specified, AIX options of account, boot, check, free, mount, size,
|
180
|
+
type, vol, log, and quota must be ordered alphabetically at the end of
|
181
|
+
the list."
|
178
182
|
|
179
183
|
validate do |value|
|
180
184
|
raise Puppet::Error, _("options must not contain whitespace: %{value}") % { value: value } if value =~ /\s/
|
data/lib/puppet/type/tidy.rb
CHANGED
@@ -267,8 +267,10 @@ Puppet::Type.newtype(:tidy) do
|
|
267
267
|
end
|
268
268
|
found_files = files.find_all { |path| tidy?(path) }.collect { |path| mkfile(path) }
|
269
269
|
result = found_files.each { |file| debug "Tidying #{file.ref}" }.sort { |a,b| b[:path] <=> a[:path] }
|
270
|
-
|
271
|
-
|
270
|
+
if found_files.size > 0
|
271
|
+
#TRANSLATORS "Tidy" is a program name and should not be translated
|
272
|
+
notice _("Tidying %{count} files") % { count: found_files.size }
|
273
|
+
end
|
272
274
|
|
273
275
|
# No need to worry about relationships if we don't have rmdirs; there won't be
|
274
276
|
# any directories.
|
@@ -331,10 +333,10 @@ Puppet::Type.newtype(:tidy) do
|
|
331
333
|
def stat(path)
|
332
334
|
begin
|
333
335
|
Puppet::FileSystem.lstat(path)
|
334
|
-
rescue Errno::ENOENT
|
336
|
+
rescue Errno::ENOENT
|
335
337
|
info _("File does not exist")
|
336
338
|
return nil
|
337
|
-
rescue Errno::EACCES
|
339
|
+
rescue Errno::EACCES
|
338
340
|
#TRANSLATORS "stat" is a program name and should not be translated
|
339
341
|
warning _("Could not stat; permission denied")
|
340
342
|
return nil
|
data/lib/puppet/type/user.rb
CHANGED
@@ -212,44 +212,13 @@ module Puppet
|
|
212
212
|
* OS X 10.8 and higher use salted SHA512 PBKDF2 hashes. When managing passwords
|
213
213
|
on these systems, the `salt` and `iterations` attributes need to be specified as
|
214
214
|
well as the password.
|
215
|
-
* Windows passwords can be managed
|
216
|
-
|
215
|
+
* Windows passwords can only be managed in cleartext, as there is no Windows API
|
216
|
+
for setting the password hash.
|
217
217
|
|
218
218
|
[stdlib]: https://github.com/puppetlabs/puppetlabs-stdlib/
|
219
219
|
|
220
220
|
Enclose any value that includes a dollar sign ($) in single quotes (') to avoid
|
221
|
-
accidental variable interpolation.
|
222
|
-
|
223
|
-
To redact passwords from reports to PuppetDB, use the `Sensitive` data type. For
|
224
|
-
example, this resource protects the password:
|
225
|
-
|
226
|
-
```puppet
|
227
|
-
user { 'foo':
|
228
|
-
ensure => present,
|
229
|
-
password => Sensitive("my secret password")
|
230
|
-
}
|
231
|
-
```
|
232
|
-
|
233
|
-
This results in the password being redacted from the report, as in the
|
234
|
-
`previous_value`, `desired_value`, and `message` fields below.
|
235
|
-
|
236
|
-
```yaml
|
237
|
-
events:
|
238
|
-
- !ruby/object:Puppet::Transaction::Event
|
239
|
-
audited: false
|
240
|
-
property: password
|
241
|
-
previous_value: "[redacted]"
|
242
|
-
desired_value: "[redacted]"
|
243
|
-
historical_value:
|
244
|
-
message: changed [redacted] to [redacted]
|
245
|
-
name: :password_changed
|
246
|
-
status: success
|
247
|
-
time: 2017-05-17 16:06:02.934398293 -07:00
|
248
|
-
redacted: true
|
249
|
-
corrective_change: false
|
250
|
-
corrective_change: false
|
251
|
-
```
|
252
|
-
}
|
221
|
+
accidental variable interpolation.}
|
253
222
|
|
254
223
|
validate do |value|
|
255
224
|
raise ArgumentError, _("Passwords cannot include ':'") if value.is_a?(String) and value.include?(":")
|
@@ -310,6 +279,25 @@ module Puppet
|
|
310
279
|
end
|
311
280
|
end
|
312
281
|
|
282
|
+
newproperty(:password_warn_days, :required_features => :manages_password_age) do
|
283
|
+
desc "The number of days before a password is going to expire (see the maximum password age) during which the user should be warned."
|
284
|
+
|
285
|
+
munge do |value|
|
286
|
+
case value
|
287
|
+
when String
|
288
|
+
Integer(value)
|
289
|
+
else
|
290
|
+
value
|
291
|
+
end
|
292
|
+
end
|
293
|
+
|
294
|
+
validate do |value|
|
295
|
+
if value.to_s !~ /^-?\d+$/
|
296
|
+
raise ArgumentError, "Password warning days must be provided as a number."
|
297
|
+
end
|
298
|
+
end
|
299
|
+
end
|
300
|
+
|
313
301
|
newproperty(:groups, :parent => Puppet::Property::List) do
|
314
302
|
desc "The groups to which the user belongs. The primary group should
|
315
303
|
not be listed, and groups should be identified by name rather than by
|
@@ -418,10 +406,9 @@ module Puppet
|
|
418
406
|
end
|
419
407
|
|
420
408
|
newproperty(:expiry, :required_features => :manages_expiry) do
|
421
|
-
desc "The expiry date for this user.
|
422
|
-
|
423
|
-
|
424
|
-
you can pass the special value `absent`."
|
409
|
+
desc "The expiry date for this user. Provide as either the special
|
410
|
+
value `absent` to ensure that the account never expires, or as
|
411
|
+
a zero-padded YYYY-MM-DD format -- for example, 2010-02-19."
|
425
412
|
|
426
413
|
newvalues :absent
|
427
414
|
newvalues /^\d{4}-\d{2}-\d{2}$/
|
@@ -785,7 +772,7 @@ module Puppet
|
|
785
772
|
# the name is stored in the 4th capture of the regex
|
786
773
|
name = $4
|
787
774
|
if name.empty?
|
788
|
-
|
775
|
+
$3.delete("\n")
|
789
776
|
# If no comment is specified for this key, generate a unique internal
|
790
777
|
# name. This uses the same rules as
|
791
778
|
# provider/ssh_authorized_key/parsed (PUP-3357)
|
data/lib/puppet/type/yumrepo.rb
CHANGED
@@ -104,6 +104,15 @@ Puppet::Type.newtype(:yumrepo) do
|
|
104
104
|
munge(&munge_yum_bool)
|
105
105
|
end
|
106
106
|
|
107
|
+
newproperty(:payload_gpgcheck) do
|
108
|
+
desc "Whether to check the GPG signature of the packages payload.
|
109
|
+
#{YUM_BOOLEAN_DOC}
|
110
|
+
#{ABSENT_DOC}"
|
111
|
+
|
112
|
+
newvalues(YUM_BOOLEAN, :absent)
|
113
|
+
munge(&munge_yum_bool)
|
114
|
+
end
|
115
|
+
|
107
116
|
newproperty(:repo_gpgcheck) do
|
108
117
|
desc "Whether to check the GPG signature on repodata.
|
109
118
|
#{YUM_BOOLEAN_DOC}
|
data/lib/puppet/type/zfs.rb
CHANGED
@@ -20,6 +20,10 @@ parent zfs instances, the zfs resource will autorequire them."
|
|
20
20
|
desc "The aclmode property. Valid values are `discard`, `groupmask`, `passthrough`."
|
21
21
|
end
|
22
22
|
|
23
|
+
newproperty(:acltype) do
|
24
|
+
desc "The acltype propery. Valid values are 'noacl' and 'posixacl'. Only supported on Linux."
|
25
|
+
end
|
26
|
+
|
23
27
|
newproperty(:atime) do
|
24
28
|
desc "The atime property. Valid values are `on`, `off`."
|
25
29
|
end
|