puppet 6.20.0-x86-mingw32 → 7.4.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/Gemfile +1 -4
- data/Gemfile.lock +13 -13
- data/README.md +1 -1
- data/conf/fileserver.conf +5 -10
- data/ext/build_defaults.yaml +1 -2
- 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 +172 -98
- data/lib/puppet/application/device.rb +100 -104
- data/lib/puppet/application/filebucket.rb +13 -9
- data/lib/puppet/application/ssl.rb +1 -1
- data/lib/puppet/configurer.rb +27 -29
- data/lib/puppet/configurer/plugin_handler.rb +21 -19
- data/lib/puppet/defaults.rb +57 -162
- data/lib/puppet/environments.rb +8 -23
- data/lib/puppet/face/facts.rb +73 -49
- 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/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/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/facts/facter.rb +25 -3
- data/lib/puppet/indirector/facts/rest.rb +3 -22
- 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/node/rest.rb +2 -4
- 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/network/authconfig.rb +2 -96
- data/lib/puppet/network/authorization.rb +13 -35
- data/lib/puppet/network/formats.rb +67 -0
- 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 +3 -1
- 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/pops/evaluator/evaluator_impl.rb +0 -5
- 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/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/property/list.rb +1 -1
- data/lib/puppet/provider.rb +0 -13
- data/lib/puppet/provider/group/groupadd.rb +13 -8
- data/lib/puppet/provider/nameservice.rb +0 -18
- data/lib/puppet/provider/package/apt.rb +30 -2
- data/lib/puppet/provider/package/aptitude.rb +6 -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/debian.rb +2 -0
- data/lib/puppet/provider/service/smf.rb +191 -73
- data/lib/puppet/provider/user/directoryservice.rb +0 -10
- data/lib/puppet/provider/user/useradd.rb +55 -8
- data/lib/puppet/reference/configuration.rb +7 -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 +45 -33
- 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 +8 -16
- data/lib/puppet/type/user.rb +1 -1
- 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/rdoc.rb +0 -7
- data/lib/puppet/util/retry_action.rb +1 -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 +521 -1226
- data/man/man5/puppet.conf.5 +35 -95
- 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 +57 -36
- data/man/man8/puppet-filebucket.8 +4 -4
- 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 +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-script.8 +1 -1
- data/man/man8/puppet-ssl.8 +1 -1
- data/man/man8/puppet.8 +2 -2
- data/spec/fixtures/unit/provider/service/smf/{svcs.out → svcs_instances.out} +0 -0
- data/spec/integration/application/agent_spec.rb +57 -11
- data/spec/integration/application/apply_spec.rb +1 -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 -3
- 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/type/file_spec.rb +5 -4
- data/spec/integration/util/windows/monkey_patches/process_spec.rb +231 -0
- 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 +1 -0
- data/spec/spec_helper.rb +2 -0
- data/spec/unit/agent_spec.rb +0 -2
- data/spec/unit/application/facts_spec.rb +86 -0
- data/spec/unit/application/filebucket_spec.rb +41 -39
- data/spec/unit/application/ssl_spec.rb +2 -2
- 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/context/trusted_information_spec.rb +2 -6
- data/spec/unit/defaults_spec.rb +22 -47
- data/spec/unit/environments_spec.rb +0 -3
- data/spec/unit/face/facts_spec.rb +4 -0
- data/spec/unit/face/node_spec.rb +14 -2
- 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 -18
- data/spec/unit/file_serving/configuration_spec.rb +6 -12
- 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/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 +0 -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 +0 -1
- data/spec/unit/http/session_spec.rb +16 -14
- data/spec/unit/{network/http → http}/site_spec.rb +3 -3
- data/spec/unit/indirector/facts/facter_spec.rb +113 -0
- data/spec/unit/indirector/file_bucket_file/file_spec.rb +5 -3
- 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/report/rest_spec.rb +2 -17
- data/spec/unit/indirector/request_spec.rb +0 -264
- data/spec/unit/indirector/rest_spec.rb +98 -752
- data/spec/unit/network/authconfig_spec.rb +2 -129
- 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 -92
- 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 -1
- 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/functions/create_resources_spec.rb +2 -20
- 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/provider/group/groupadd_spec.rb +5 -2
- data/spec/unit/provider/nameservice_spec.rb +0 -57
- data/spec/unit/provider/package/apt_spec.rb +24 -15
- data/spec/unit/provider/package/aptitude_spec.rb +1 -1
- 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/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/useradd_spec.rb +55 -3
- data/spec/unit/provider_spec.rb +0 -12
- data/spec/unit/resource/type_collection_spec.rb +2 -22
- data/spec/unit/resource_spec.rb +0 -56
- 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 +17 -0
- data/spec/unit/ssl/base_spec.rb +36 -3
- data/spec/unit/ssl/certificate_request_spec.rb +19 -55
- data/spec/unit/ssl/certificate_spec.rb +2 -11
- data/spec/unit/ssl/state_machine_spec.rb +0 -1
- data/spec/unit/ssl/verifier_spec.rb +0 -21
- 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 +45 -79
- data/spec/unit/type/file/checksum_spec.rb +6 -6
- data/spec/unit/type/file/content_spec.rb +1 -1
- 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/source_spec.rb +0 -1
- data/spec/unit/type/file_spec.rb +12 -6
- data/spec/unit/type/package_spec.rb +1 -1
- data/spec/unit/type_spec.rb +20 -0
- data/spec/unit/util/backups_spec.rb +0 -2
- data/spec/unit/util/execution_spec.rb +0 -29
- data/spec/unit/util/monkey_patches_spec.rb +0 -6
- data/spec/unit/util/run_mode_spec.rb +21 -121
- 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 +0 -18
- metadata +48 -219
- 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/fact_dif.rb +0 -62
- 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/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/key_spec.rb +0 -9
- data/spec/unit/face/module/search_spec.rb +0 -231
- 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 -78
- 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 -148
- data/spec/unit/rest/route_spec.rb +0 -132
- data/spec/unit/ssl/host_spec.rb +0 -645
- 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
@@ -4,7 +4,7 @@ require 'puppet/certificate_factory'
|
|
4
4
|
require 'puppet/ssl/certificate'
|
5
5
|
|
6
6
|
describe Puppet::SSL::Certificate do
|
7
|
-
let :key do
|
7
|
+
let :key do OpenSSL::PKey::RSA.new(Puppet[:keylength]) end
|
8
8
|
|
9
9
|
# Sign the provided cert so that it can be DER-decoded later
|
10
10
|
def sign_wrapped_cert(cert)
|
@@ -16,14 +16,6 @@ describe Puppet::SSL::Certificate do
|
|
16
16
|
@class = Puppet::SSL::Certificate
|
17
17
|
end
|
18
18
|
|
19
|
-
it "should be extended with the Indirector module" do
|
20
|
-
expect(@class.singleton_class).to be_include(Puppet::Indirector)
|
21
|
-
end
|
22
|
-
|
23
|
-
it "should indirect certificate" do
|
24
|
-
expect(@class.indirection.name).to eq(:certificate)
|
25
|
-
end
|
26
|
-
|
27
19
|
it "should only support the text format" do
|
28
20
|
expect(@class.supported_formats).to eq([:s])
|
29
21
|
end
|
@@ -82,8 +74,7 @@ describe Puppet::SSL::Certificate do
|
|
82
74
|
|
83
75
|
describe "when managing instances" do
|
84
76
|
def build_cert(opts)
|
85
|
-
key =
|
86
|
-
key.generate
|
77
|
+
key = OpenSSL::PKey::RSA.new(Puppet[:keylength])
|
87
78
|
csr = Puppet::SSL::CertificateRequest.new('quux')
|
88
79
|
csr.generate(key, opts)
|
89
80
|
|
@@ -505,7 +505,6 @@ describe Puppet::SSL::StateMachine, unless: Puppet::Util::Platform.jruby? do
|
|
505
505
|
Puppet[:certificate_revocation] = false
|
506
506
|
|
507
507
|
expect(cert_provider).not_to receive(:load_crls)
|
508
|
-
expect(Puppet::Rest::Routes).not_to receive(:get_crls)
|
509
508
|
|
510
509
|
state.next_state
|
511
510
|
|
@@ -6,7 +6,6 @@ describe Puppet::SSL::Verifier do
|
|
6
6
|
let(:host) { 'example.com' }
|
7
7
|
let(:http) { Net::HTTP.new(host) }
|
8
8
|
let(:verifier) { described_class.new(host, ssl_context) }
|
9
|
-
let(:adapter) { Puppet::SSL::VerifierAdapter.new(Puppet::SSL::Validator::DefaultValidator.new) }
|
10
9
|
|
11
10
|
context '#reusable?' do
|
12
11
|
it 'Verifiers with the same ssl_context are reusable' do
|
@@ -16,26 +15,6 @@ describe Puppet::SSL::Verifier do
|
|
16
15
|
it 'Verifiers with different ssl_contexts are not reusable' do
|
17
16
|
expect(verifier).to_not be_reusable(described_class.new(host, Puppet::SSL::SSLContext.new))
|
18
17
|
end
|
19
|
-
|
20
|
-
it 'Verifier is not reusable with VerifierAdapter' do
|
21
|
-
expect(verifier).to_not be_reusable(adapter)
|
22
|
-
end
|
23
|
-
|
24
|
-
it 'VerifierAdapter is not reusable with Verifier' do
|
25
|
-
expect(adapter).to_not be_reusable(verifier)
|
26
|
-
end
|
27
|
-
|
28
|
-
it 'VerifierAdapters with the same class of Validator are reusable' do
|
29
|
-
expect(
|
30
|
-
adapter
|
31
|
-
).to be_reusable(Puppet::SSL::VerifierAdapter.new(Puppet::SSL::Validator::DefaultValidator.new))
|
32
|
-
end
|
33
|
-
|
34
|
-
it 'VerifierAdapters with different classes of Validators are not reusable' do
|
35
|
-
expect(
|
36
|
-
adapter
|
37
|
-
).to_not be_reusable(Puppet::SSL::VerifierAdapter.new(Puppet::SSL::Validator::NoValidator.new))
|
38
|
-
end
|
39
18
|
end
|
40
19
|
|
41
20
|
context '#setup_connection' do
|
@@ -675,7 +675,6 @@ Version:
|
|
675
675
|
report.code_id = "some code id"
|
676
676
|
report.catalog_uuid = "some catalog uuid"
|
677
677
|
report.cached_catalog_status = "not_used"
|
678
|
-
report.master_used = "test:000"
|
679
678
|
report.server_used = "test:000"
|
680
679
|
report.add_resource_status(status)
|
681
680
|
report.transaction_completed = true
|
@@ -694,7 +693,6 @@ Version:
|
|
694
693
|
report.code_id = "some code id"
|
695
694
|
report.catalog_uuid = "some catalog uuid"
|
696
695
|
report.cached_catalog_status = "not_used"
|
697
|
-
report.master_used = "test:000"
|
698
696
|
report.server_used = "test:000"
|
699
697
|
report.add_resource_status(status)
|
700
698
|
report.transaction_completed = true
|
@@ -612,14 +612,14 @@ describe Puppet::Transaction::ResourceHarness do
|
|
612
612
|
allow_any_instance_of(Puppet::Transaction::Event).to receive(:corrective_change).and_return(true)
|
613
613
|
status = @harness.evaluate(resource)
|
614
614
|
sync_event = status.events[0]
|
615
|
-
expect(sync_event.message).to match(/content changed '{
|
615
|
+
expect(sync_event.message).to match(/content changed '{sha256}[0-9a-f]+' to '{sha256}[0-9a-f]+' \(corrective\)/)
|
616
616
|
end
|
617
617
|
|
618
618
|
it "contains no modifier when intentional change" do
|
619
619
|
allow_any_instance_of(Puppet::Transaction::Event).to receive(:corrective_change).and_return(false)
|
620
620
|
status = @harness.evaluate(resource)
|
621
621
|
sync_event = status.events[0]
|
622
|
-
expect(sync_event.message).to match(/content changed '{
|
622
|
+
expect(sync_event.message).to match(/content changed '{sha256}[0-9a-f]+' to '{sha256}[0-9a-f]+'$/)
|
623
623
|
end
|
624
624
|
end
|
625
625
|
end
|
@@ -605,115 +605,81 @@ describe Puppet::Transaction do
|
|
605
605
|
transaction.prefetch_if_necessary(resource)
|
606
606
|
end
|
607
607
|
|
608
|
-
it "should not rescue SystemExit
|
609
|
-
Puppet.settings[:future_features] = false
|
608
|
+
it "should not rescue SystemExit" do
|
610
609
|
expect(resource.provider.class).to receive(:prefetch).and_raise(SystemExit, "SystemMessage")
|
611
610
|
expect { transaction.prefetch_if_necessary(resource) }.to raise_error(SystemExit, "SystemMessage")
|
612
611
|
end
|
613
612
|
|
614
|
-
it "should
|
615
|
-
Puppet.settings[:future_features] = true
|
616
|
-
expect(resource.provider.class).to receive(:prefetch).and_raise(SystemExit, "SystemMessage")
|
617
|
-
expect { transaction.prefetch_if_necessary(resource) }.to raise_error(SystemExit, "SystemMessage")
|
618
|
-
end
|
619
|
-
|
620
|
-
it "should rescue LoadError without future_features flag" do
|
621
|
-
Puppet.settings[:future_features] = false
|
622
|
-
expect(resource.provider.class).to receive(:prefetch).and_raise(LoadError, "LoadMessage")
|
623
|
-
expect { transaction.prefetch_if_necessary(resource) }.not_to raise_error
|
624
|
-
end
|
625
|
-
|
626
|
-
it "should rescue LoadError with future_features flag" do
|
627
|
-
Puppet.settings[:future_features] = true
|
613
|
+
it "should mark resources as failed when prefetching raises LoadError" do
|
628
614
|
expect(resource.provider.class).to receive(:prefetch).and_raise(LoadError, "LoadMessage")
|
629
|
-
|
615
|
+
transaction.prefetch_if_necessary(resource)
|
616
|
+
expect(transaction.prefetched_providers[:package][:pkgng]).to be_truthy
|
630
617
|
end
|
631
618
|
|
632
|
-
describe "and prefetching
|
619
|
+
describe "and prefetching raises Puppet::Error" do
|
633
620
|
before :each do
|
634
621
|
expect(resource.provider.class).to receive(:prefetch).and_raise(Puppet::Error, "message")
|
635
622
|
end
|
636
623
|
|
637
|
-
|
638
|
-
|
639
|
-
Puppet.settings[:future_features] = false
|
640
|
-
end
|
641
|
-
|
642
|
-
it "should not rescue prefetch executions" do
|
643
|
-
expect { transaction.prefetch_if_necessary(resource) }.to raise_error(Puppet::Error)
|
644
|
-
end
|
624
|
+
it "should rescue prefetch executions" do
|
625
|
+
transaction.prefetch_if_necessary(resource)
|
645
626
|
|
646
|
-
|
647
|
-
expect(Puppet).to receive(:log_exception).with(anything, "Could not prefetch package provider 'pkgng': message")
|
648
|
-
expect { transaction.prefetch_if_necessary(resource) }.to raise_error(Puppet::Error, "message")
|
649
|
-
end
|
627
|
+
expect(transaction.prefetched_providers[:package][:pkgng]).to be_truthy
|
650
628
|
end
|
651
629
|
|
652
|
-
|
653
|
-
|
654
|
-
Puppet.settings[:future_features] = true
|
655
|
-
end
|
630
|
+
it "should mark resources as failed", :unless => RUBY_PLATFORM == 'java' do
|
631
|
+
transaction.evaluate
|
656
632
|
|
657
|
-
|
658
|
-
|
633
|
+
expect(transaction.resource_status(resource).failed?).to be_truthy
|
634
|
+
end
|
659
635
|
|
660
|
-
|
661
|
-
|
636
|
+
it "should mark a provider that has failed prefetch" do
|
637
|
+
transaction.prefetch_if_necessary(resource)
|
662
638
|
|
663
|
-
|
664
|
-
|
639
|
+
expect(transaction.prefetch_failed_providers[:package][:pkgng]).to be_truthy
|
640
|
+
end
|
665
641
|
|
666
|
-
|
642
|
+
describe "and new resources are generated" do
|
643
|
+
let(:generator) { Puppet::Type.type(:generator).new :title => "generator" }
|
644
|
+
let(:generated) do
|
645
|
+
%w[a b c].map { |name| Puppet::Type.type(:package).new :title => "foo", :name => name, :provider => :apt }
|
667
646
|
end
|
668
647
|
|
669
|
-
|
670
|
-
|
671
|
-
|
672
|
-
|
648
|
+
before :each do
|
649
|
+
catalog.add_resource generator
|
650
|
+
allow(generator).to receive(:generate).and_return(generated)
|
651
|
+
allow(catalog).to receive(:container_of).and_return(generator)
|
673
652
|
end
|
674
653
|
|
675
|
-
|
676
|
-
|
677
|
-
|
678
|
-
|
679
|
-
end
|
680
|
-
|
681
|
-
before :each do
|
682
|
-
catalog.add_resource generator
|
683
|
-
allow(generator).to receive(:generate).and_return(generated)
|
684
|
-
allow(catalog).to receive(:container_of).and_return(generator)
|
685
|
-
end
|
686
|
-
|
687
|
-
it "should not evaluate resources with a failed provider, even if the prefetch is rescued" do
|
688
|
-
#Only the generator resource should be applied, all the other resources are failed, and skipped.
|
689
|
-
catalog.remove_resource resource2
|
690
|
-
expect(transaction).to receive(:apply).once
|
654
|
+
it "should not evaluate resources with a failed provider, even if the prefetch is rescued" do
|
655
|
+
#Only the generator resource should be applied, all the other resources are failed, and skipped.
|
656
|
+
catalog.remove_resource resource2
|
657
|
+
expect(transaction).to receive(:apply).once
|
691
658
|
|
692
|
-
|
693
|
-
|
659
|
+
transaction.evaluate
|
660
|
+
end
|
694
661
|
|
695
|
-
|
696
|
-
|
697
|
-
|
662
|
+
it "should not fail other resources added after the failing resource", :unless => RUBY_PLATFORM == 'java' do
|
663
|
+
new_resource = Puppet::Type.type(:notify).new :name => "baz"
|
664
|
+
catalog.add_resource(new_resource)
|
698
665
|
|
699
|
-
|
666
|
+
transaction.evaluate
|
700
667
|
|
701
|
-
|
702
|
-
|
668
|
+
expect(transaction.resource_status(new_resource).failed?).to be_falsey
|
669
|
+
end
|
703
670
|
|
704
|
-
|
705
|
-
|
706
|
-
|
671
|
+
it "should fail other resources that require the failing resource" do
|
672
|
+
new_resource = Puppet::Type.type(:notify).new(:name => "baz", :require => resource)
|
673
|
+
catalog.add_resource(new_resource)
|
707
674
|
|
708
|
-
|
709
|
-
|
675
|
+
catalog.remove_resource resource2
|
676
|
+
expect(transaction).to receive(:apply).once
|
710
677
|
|
711
|
-
|
678
|
+
transaction.evaluate
|
712
679
|
|
713
|
-
|
714
|
-
|
715
|
-
|
716
|
-
end
|
680
|
+
expect(transaction.resource_status(resource).failed?).to be_truthy
|
681
|
+
expect(transaction.resource_status(new_resource).dependency_failed?).to be_truthy
|
682
|
+
expect(transaction.skip?(new_resource)).to be_truthy
|
717
683
|
end
|
718
684
|
end
|
719
685
|
end
|
@@ -18,8 +18,8 @@ describe checksum do
|
|
18
18
|
@checksum.sum("foobar")
|
19
19
|
end
|
20
20
|
|
21
|
-
it "should use :
|
22
|
-
expect(@checksum).to receive(:
|
21
|
+
it "should use :sha256 to sum when no value is set" do
|
22
|
+
expect(@checksum).to receive(:sha256).with("foobar").and_return("yay")
|
23
23
|
@checksum.sum("foobar")
|
24
24
|
end
|
25
25
|
|
@@ -47,8 +47,8 @@ describe checksum do
|
|
47
47
|
expect(@checksum.sum("foobar")).to eq("{sha384}#{sum}")
|
48
48
|
end
|
49
49
|
|
50
|
-
it "should use :
|
51
|
-
expect(@checksum.default).to eq(:
|
50
|
+
it "should use :sha256 as its default type" do
|
51
|
+
expect(@checksum.default).to eq(:sha256)
|
52
52
|
end
|
53
53
|
|
54
54
|
it "should use its current value when asked to sum a file's content" do
|
@@ -57,8 +57,8 @@ describe checksum do
|
|
57
57
|
@checksum.sum_file(@path)
|
58
58
|
end
|
59
59
|
|
60
|
-
it "should use :
|
61
|
-
expect(@checksum).to receive(:
|
60
|
+
it "should use :sha256 to sum a file when no value is set" do
|
61
|
+
expect(@checksum).to receive(:sha256_file).with(@path).and_return("yay")
|
62
62
|
@checksum.sum_file(@path)
|
63
63
|
end
|
64
64
|
|
@@ -7,7 +7,7 @@ describe Puppet::Type.type(:file).attrclass(:content), :uses_checksums => true d
|
|
7
7
|
let(:filename) { tmpfile('testfile') }
|
8
8
|
let(:environment) { Puppet::Node::Environment.create(:testing, []) }
|
9
9
|
let(:catalog) { Puppet::Resource::Catalog.new(:test, environment) }
|
10
|
-
let(:resource) { Puppet::Type.type(:file).new :path => filename, :catalog => catalog }
|
10
|
+
let(:resource) { Puppet::Type.type(:file).new :path => filename, :catalog => catalog, :backup => 'puppet' }
|
11
11
|
|
12
12
|
before do
|
13
13
|
File.open(filename, 'w') {|f| f.write "initial file content"}
|
@@ -85,7 +85,7 @@ describe Puppet::Type.type(:file).attrclass(:ensure) do
|
|
85
85
|
}.to raise_error(Puppet::Error, /Cannot create #{newpath}; parent directory #{File.dirname(newpath)} does not exist/)
|
86
86
|
end
|
87
87
|
|
88
|
-
it "should accept octal mode as
|
88
|
+
it "should accept octal mode as integer" do
|
89
89
|
resource[:mode] = '0700'
|
90
90
|
expect(resource).to receive(:property_fix)
|
91
91
|
expect(Dir).to receive(:mkdir).with(path, 0700)
|
@@ -11,7 +11,7 @@ describe Puppet::Type.type(:file).attrclass(:mode) do
|
|
11
11
|
it "should reject non-string values" do
|
12
12
|
expect {
|
13
13
|
mode.value = 0755
|
14
|
-
}.to raise_error(Puppet::Error, /The file mode specification must be a string, not '
|
14
|
+
}.to raise_error(Puppet::Error, /The file mode specification must be a string, not 'Integer'/)
|
15
15
|
end
|
16
16
|
|
17
17
|
it "should accept values specified as octal numbers in strings" do
|
data/spec/unit/type/file_spec.rb
CHANGED
@@ -1,3 +1,4 @@
|
|
1
|
+
# coding: utf-8
|
1
2
|
require 'spec_helper'
|
2
3
|
|
3
4
|
describe Puppet::Type.type(:file) do
|
@@ -133,6 +134,10 @@ describe Puppet::Type.type(:file) do
|
|
133
134
|
end
|
134
135
|
|
135
136
|
describe "the backup parameter" do
|
137
|
+
it 'should be disabled by default' do
|
138
|
+
expect(file[:backup]).to eq(nil)
|
139
|
+
end
|
140
|
+
|
136
141
|
[false, 'false', :false].each do |value|
|
137
142
|
it "should disable backup if the value is #{value.inspect}" do
|
138
143
|
file[:backup] = value
|
@@ -768,7 +773,7 @@ describe Puppet::Type.type(:file) do
|
|
768
773
|
it "should set the checksum parameter based on the metadata" do
|
769
774
|
allow(file).to receive(:perform_recursion).and_return([@first])
|
770
775
|
allow(@resource).to receive(:[]=)
|
771
|
-
expect(@resource).to receive(:[]=).with(:checksum, "
|
776
|
+
expect(@resource).to receive(:[]=).with(:checksum, "sha256")
|
772
777
|
file.recurse_remote("first" => @resource)
|
773
778
|
end
|
774
779
|
|
@@ -804,7 +809,7 @@ describe Puppet::Type.type(:file) do
|
|
804
809
|
allow(file).to receive(:perform_recursion).and_return([@first])
|
805
810
|
|
806
811
|
allow(file).to receive(:[]=)
|
807
|
-
expect(file). to receive(:[]=).with(:checksum, "
|
812
|
+
expect(file). to receive(:[]=).with(:checksum, "sha256")
|
808
813
|
|
809
814
|
file.recurse_remote("first" => @resource)
|
810
815
|
end
|
@@ -922,7 +927,7 @@ describe Puppet::Type.type(:file) do
|
|
922
927
|
end
|
923
928
|
|
924
929
|
it "should fail if it can't backup the file" do
|
925
|
-
|
930
|
+
file[:backup] = true
|
926
931
|
allow(file).to receive(:stat).and_return(double('stat', :ftype => 'file'))
|
927
932
|
allow(file).to receive(:perform_backup).and_return(false)
|
928
933
|
|
@@ -931,7 +936,7 @@ describe Puppet::Type.type(:file) do
|
|
931
936
|
|
932
937
|
describe "backing up directories" do
|
933
938
|
it "should not backup directories if backup is true and force is false" do
|
934
|
-
|
939
|
+
file[:backup] = true
|
935
940
|
file[:force] = false
|
936
941
|
allow(file).to receive(:stat).and_return(double('stat', :ftype => 'directory'))
|
937
942
|
|
@@ -941,7 +946,7 @@ describe Puppet::Type.type(:file) do
|
|
941
946
|
end
|
942
947
|
|
943
948
|
it "should backup directories if backup is true and force is true" do
|
944
|
-
|
949
|
+
file[:backup] = true
|
945
950
|
file[:force] = true
|
946
951
|
allow(file).to receive(:stat).and_return(double('stat', :ftype => 'directory'))
|
947
952
|
|
@@ -968,7 +973,7 @@ describe Puppet::Type.type(:file) do
|
|
968
973
|
end
|
969
974
|
|
970
975
|
it "should remove a directory if backup is true and force is true" do
|
971
|
-
|
976
|
+
file[:backup] = true
|
972
977
|
file[:force] = true
|
973
978
|
allow(file).to receive(:stat).and_return(double('stat', :ftype => 'directory'))
|
974
979
|
|
@@ -1000,6 +1005,7 @@ describe Puppet::Type.type(:file) do
|
|
1000
1005
|
end
|
1001
1006
|
|
1002
1007
|
it "should fail if the file is not a directory, link, file, fifo, socket, or is unknown" do
|
1008
|
+
file[:backup] = 'puppet'
|
1003
1009
|
allow(file).to receive(:stat).and_return(double('stat', :ftype => 'blockSpecial'))
|
1004
1010
|
|
1005
1011
|
expect(file).to receive(:warning).with("Could not back up file of type blockSpecial")
|
@@ -349,7 +349,7 @@ describe Puppet::Type.type(:package) do
|
|
349
349
|
end
|
350
350
|
end
|
351
351
|
|
352
|
-
[:purged, :absent
|
352
|
+
[:purged, :absent].each do |state|
|
353
353
|
it "should not reinstall if it should be #{state.to_s} and reinstall_on_refresh is true" do
|
354
354
|
@package[:ensure] = state
|
355
355
|
allow(@provider).to receive(:reinstallable?).and_return(true)
|
data/spec/unit/type_spec.rb
CHANGED
@@ -195,6 +195,26 @@ describe Puppet::Type, :unless => Puppet::Util::Platform.windows? do
|
|
195
195
|
end
|
196
196
|
end
|
197
197
|
|
198
|
+
context 'aliased resource' do
|
199
|
+
it 'fails if a resource is defined and then redefined using name that results in the same alias' do
|
200
|
+
drive = Puppet::Util::Platform.windows? ? 'C:' : ''
|
201
|
+
code = <<~PUPPET
|
202
|
+
$dir='#{drive}/tmp/test'
|
203
|
+
$same_dir='#{drive}/tmp/test/'
|
204
|
+
|
205
|
+
file {$dir:
|
206
|
+
ensure => directory
|
207
|
+
}
|
208
|
+
|
209
|
+
file { $same_dir:
|
210
|
+
ensure => directory
|
211
|
+
}
|
212
|
+
PUPPET
|
213
|
+
|
214
|
+
expect { compile_to_ral(code) }.to raise_error(/resource \["File", "#{drive}\/tmp\/test"\] already declared/)
|
215
|
+
end
|
216
|
+
end
|
217
|
+
|
198
218
|
context "resource attributes" do
|
199
219
|
let(:resource) {
|
200
220
|
resource = klass.new(:name => "foo")
|