puppet 6.20.0-x64-mingw32 → 7.4.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.
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
@@ -822,7 +822,7 @@ describe "Puppet::Util::Windows::Security", :if => Puppet::Util::Platform.window
|
|
822
822
|
end
|
823
823
|
|
824
824
|
describe "locked files" do
|
825
|
-
let (:explorer) { File.join(
|
825
|
+
let (:explorer) { File.join(ENV['SystemRoot'], "explorer.exe") }
|
826
826
|
|
827
827
|
it "should get the owner" do
|
828
828
|
expect(winsec.get_owner(explorer)).to match(/^S-1-5-/)
|
@@ -103,7 +103,7 @@ class PuppetSpec::Puppetserver
|
|
103
103
|
end
|
104
104
|
|
105
105
|
def register_mounts(mounts: {})
|
106
|
-
register_mount('/status/v1/simple/
|
106
|
+
register_mount('/status/v1/simple/server', proc { |req, res| }, nil)
|
107
107
|
register_mount('/puppet/v3/node', mounts[:node], NodeServlet)
|
108
108
|
register_mount('/puppet/v3/catalog', mounts[:catalog], CatalogServlet)
|
109
109
|
register_mount('/puppet/v3/file_metadatas', mounts[:file_metadatas], FileMetadatasServlet)
|
@@ -11,6 +11,7 @@ module PuppetSpec::Settings
|
|
11
11
|
:confdir => { :type => :directory, :default => "test", :desc => "confdir" },
|
12
12
|
:codedir => { :type => :directory, :default => "test", :desc => "codedir" },
|
13
13
|
:vardir => { :type => :directory, :default => "test", :desc => "vardir" },
|
14
|
+
:publicdir => { :type => :directory, :default => "test", :desc => "publicdir" },
|
14
15
|
:rundir => { :type => :directory, :default => "test", :desc => "rundir" },
|
15
16
|
}.freeze
|
16
17
|
|
data/spec/spec_helper.rb
CHANGED
@@ -145,6 +145,7 @@ RSpec.configure do |config|
|
|
145
145
|
|
146
146
|
base = PuppetSpec::Files.tmpdir('tmp_settings')
|
147
147
|
Puppet[:vardir] = File.join(base, 'var')
|
148
|
+
Puppet[:publicdir] = File.join(base, 'public')
|
148
149
|
Puppet[:confdir] = File.join(base, 'etc')
|
149
150
|
Puppet[:codedir] = File.join(base, 'code')
|
150
151
|
Puppet[:logdir] = "$vardir/log"
|
@@ -152,6 +153,7 @@ RSpec.configure do |config|
|
|
152
153
|
Puppet[:hiera_config] = File.join(base, 'hiera')
|
153
154
|
|
154
155
|
FileUtils.mkdir_p Puppet[:statedir]
|
156
|
+
FileUtils.mkdir_p Puppet[:publicdir]
|
155
157
|
|
156
158
|
Puppet::Test::TestHelper.before_each_test()
|
157
159
|
end
|
data/spec/unit/agent_spec.rb
CHANGED
@@ -24,8 +24,6 @@ end
|
|
24
24
|
|
25
25
|
describe Puppet::Agent do
|
26
26
|
before do
|
27
|
-
allow(Puppet::Status.indirection).to receive(:find).and_return(Puppet::Status.new("version" => Puppet.version))
|
28
|
-
|
29
27
|
@agent = Puppet::Agent.new(AgentTestClient, false)
|
30
28
|
|
31
29
|
# make Puppet::Application safe for stubbing; restore in an :after block; silence warnings for this.
|
@@ -50,4 +50,90 @@ describe Puppet::Application::Facts do
|
|
50
50
|
}.to exit_with(0)
|
51
51
|
.and output(expected).to_stdout
|
52
52
|
end
|
53
|
+
|
54
|
+
context 'when show action is called' do
|
55
|
+
let(:expected) { <<~END }
|
56
|
+
{
|
57
|
+
"filesystems": "apfs,autofs,devfs",
|
58
|
+
"macaddress": "64:52:11:22:03:25"
|
59
|
+
}
|
60
|
+
END
|
61
|
+
|
62
|
+
before :each do
|
63
|
+
Puppet::Node::Facts.indirection.terminus_class = :facter
|
64
|
+
allow(Facter).to receive(:resolve).and_return(values)
|
65
|
+
app.command_line.args = %w{show}
|
66
|
+
end
|
67
|
+
|
68
|
+
it 'correctly displays facts with default formatting' do
|
69
|
+
expect {
|
70
|
+
app.run
|
71
|
+
}.to exit_with(0)
|
72
|
+
.and output(expected).to_stdout
|
73
|
+
end
|
74
|
+
|
75
|
+
it 'displays a single fact value' do
|
76
|
+
app.command_line.args << 'filesystems' << '--value-only'
|
77
|
+
expect {
|
78
|
+
app.run
|
79
|
+
}.to exit_with(0)
|
80
|
+
.and output("apfs,autofs,devfs\n").to_stdout
|
81
|
+
end
|
82
|
+
|
83
|
+
it "warns and ignores value-only when multiple fact names are specified" do
|
84
|
+
app.command_line.args << 'filesystems' << 'macaddress' << '--value-only'
|
85
|
+
expect {
|
86
|
+
app.run
|
87
|
+
}.to exit_with(0)
|
88
|
+
.and output(expected).to_stdout
|
89
|
+
.and output(/it can only be used when querying for a single fact/).to_stderr
|
90
|
+
end
|
91
|
+
|
92
|
+
{
|
93
|
+
"type_hash" => [{'a' => 2}, "{\n \"a\": 2\n}"],
|
94
|
+
"type_array" => [[], "[\n\n]"],
|
95
|
+
"type_string" => ["str", "str"],
|
96
|
+
"type_int" => [1, "1"],
|
97
|
+
"type_float" => [1.0, "1.0"],
|
98
|
+
"type_true" => [true, "true"],
|
99
|
+
"type_false" => [false, "false"],
|
100
|
+
"type_nil" => [nil, ""],
|
101
|
+
"type_sym" => [:sym, "sym"]
|
102
|
+
}.each_pair do |name, values|
|
103
|
+
it "renders '#{name}' as '#{values.last}'" do
|
104
|
+
fact_value = values.first
|
105
|
+
fact_output = values.last
|
106
|
+
|
107
|
+
allow(Facter).to receive(:resolve).and_return({name => fact_value})
|
108
|
+
|
109
|
+
app.command_line.args << name << '--value-only'
|
110
|
+
expect {
|
111
|
+
app.run
|
112
|
+
}.to exit_with(0)
|
113
|
+
.and output("#{fact_output}\n").to_stdout
|
114
|
+
end
|
115
|
+
end
|
116
|
+
end
|
117
|
+
|
118
|
+
context 'when default action is called' do
|
119
|
+
let(:expected) { <<~END }
|
120
|
+
---
|
121
|
+
filesystems: apfs,autofs,devfs
|
122
|
+
macaddress: 64:52:11:22:03:25
|
123
|
+
END
|
124
|
+
|
125
|
+
before :each do
|
126
|
+
Puppet::Node::Facts.indirection.terminus_class = :facter
|
127
|
+
allow(Facter).to receive(:resolve).and_return(values)
|
128
|
+
app.command_line.args = %w{--render-as yaml}
|
129
|
+
end
|
130
|
+
|
131
|
+
it 'calls show action' do
|
132
|
+
expect {
|
133
|
+
app.run
|
134
|
+
}.to exit_with(0)
|
135
|
+
.and output(expected).to_stdout
|
136
|
+
expect(app.action.name).to eq(:show)
|
137
|
+
end
|
138
|
+
end
|
53
139
|
end
|
@@ -114,15 +114,15 @@ describe Puppet::Application::Filebucket do
|
|
114
114
|
end
|
115
115
|
|
116
116
|
it "should default to the first good server_list entry if server_list is set" do
|
117
|
-
stub_request(:get, "https://foo:8140/status/v1/simple/
|
117
|
+
stub_request(:get, "https://foo:8140/status/v1/simple/server").to_return(status: 200)
|
118
118
|
Puppet[:server_list] = "foo,bar,baz"
|
119
119
|
expect(Puppet::FileBucket::Dipper).to receive(:new).with(hash_including(Server: "foo"))
|
120
120
|
@filebucket.setup
|
121
121
|
end
|
122
122
|
|
123
123
|
it "should walk server_list until it finds a good entry" do
|
124
|
-
stub_request(:get, "https://foo:8140/status/v1/simple/
|
125
|
-
stub_request(:get, "https://bar:8140/status/v1/simple/
|
124
|
+
stub_request(:get, "https://foo:8140/status/v1/simple/server").to_return(status: 502)
|
125
|
+
stub_request(:get, "https://bar:8140/status/v1/simple/server").to_return(status: 200)
|
126
126
|
Puppet[:server_list] = "foo,bar,baz"
|
127
127
|
expect(Puppet::FileBucket::Dipper).to receive(:new).with(hash_including(Server: "bar"))
|
128
128
|
@filebucket.setup
|
@@ -130,6 +130,8 @@ describe Puppet::Application::Filebucket do
|
|
130
130
|
|
131
131
|
# FileBucket catches any exceptions raised, logs them, then just exits
|
132
132
|
it "raises an error if there are no functional servers in server_list" do
|
133
|
+
stub_request(:get, "https://foo:8140/status/v1/simple/server").to_return(status: 404)
|
134
|
+
stub_request(:get, "https://bar:8140/status/v1/simple/server").to_return(status: 404)
|
133
135
|
stub_request(:get, "https://foo:8140/status/v1/simple/master").to_return(status: 404)
|
134
136
|
stub_request(:get, "https://bar:8140/status/v1/simple/master").to_return(status: 404)
|
135
137
|
Puppet[:server] = 'horacio'
|
@@ -145,7 +147,7 @@ describe Puppet::Application::Filebucket do
|
|
145
147
|
end
|
146
148
|
|
147
149
|
it "should take both the server and port specified in server_list" do
|
148
|
-
stub_request(:get, "https://foo:632/status/v1/simple/
|
150
|
+
stub_request(:get, "https://foo:632/status/v1/simple/server").to_return(status: 200)
|
149
151
|
Puppet[:server_list] = "foo:632,bar:6215,baz:351"
|
150
152
|
expect(Puppet::FileBucket::Dipper).to receive(:new).with({ :Server => "foo", :Port => 632 })
|
151
153
|
@filebucket.setup
|
@@ -185,11 +187,11 @@ describe Puppet::Application::Filebucket do
|
|
185
187
|
@filebucket.get
|
186
188
|
end
|
187
189
|
|
188
|
-
it "should call the client getfile method with the given
|
189
|
-
|
190
|
-
allow(@filebucket).to receive(:args).and_return([
|
190
|
+
it "should call the client getfile method with the given digest" do
|
191
|
+
digest = 'DEADBEEF'
|
192
|
+
allow(@filebucket).to receive(:args).and_return([digest])
|
191
193
|
|
192
|
-
expect(@client).to receive(:getfile).with(
|
194
|
+
expect(@client).to receive(:getfile).with(digest)
|
193
195
|
|
194
196
|
@filebucket.get
|
195
197
|
end
|
@@ -223,12 +225,12 @@ describe Puppet::Application::Filebucket do
|
|
223
225
|
end
|
224
226
|
|
225
227
|
describe "the command restore" do
|
226
|
-
it "should call the client getfile method with the given
|
227
|
-
|
228
|
-
file=
|
229
|
-
allow(@filebucket).to receive(:args).and_return([file,
|
228
|
+
it "should call the client getfile method with the given digest" do
|
229
|
+
digest = 'DEADBEEF'
|
230
|
+
file = 'testfile'
|
231
|
+
allow(@filebucket).to receive(:args).and_return([file, digest])
|
230
232
|
|
231
|
-
expect(@client).to receive(:restore).with(file,
|
233
|
+
expect(@client).to receive(:restore).with(file, digest)
|
232
234
|
|
233
235
|
@filebucket.restore
|
234
236
|
end
|
@@ -236,55 +238,55 @@ describe Puppet::Application::Filebucket do
|
|
236
238
|
|
237
239
|
describe "the command diff" do
|
238
240
|
it "should call the client diff method with 2 given checksums" do
|
239
|
-
|
240
|
-
|
241
|
+
digest_a = 'DEADBEEF'
|
242
|
+
digest_b = 'BEEF'
|
241
243
|
allow(Puppet::FileSystem).to receive(:exist?).and_return(false)
|
242
|
-
allow(@filebucket).to receive(:args).and_return([
|
244
|
+
allow(@filebucket).to receive(:args).and_return([digest_a, digest_b])
|
243
245
|
|
244
|
-
expect(@client).to receive(:diff).with(
|
246
|
+
expect(@client).to receive(:diff).with(digest_a, digest_b, nil, nil)
|
245
247
|
|
246
248
|
@filebucket.diff
|
247
249
|
end
|
248
250
|
|
249
|
-
it "should call the
|
250
|
-
|
251
|
-
|
252
|
-
allow(Puppet::FileSystem).to receive(:exist?).with(
|
253
|
-
allow(Puppet::FileSystem).to receive(:exist?).with(
|
254
|
-
allow(@filebucket).to receive(:args).and_return([
|
251
|
+
it "should call the client diff with a path if the second argument is a file" do
|
252
|
+
digest_a = 'DEADBEEF'
|
253
|
+
digest_b = 'BEEF'
|
254
|
+
allow(Puppet::FileSystem).to receive(:exist?).with(digest_a).and_return(false)
|
255
|
+
allow(Puppet::FileSystem).to receive(:exist?).with(digest_b).and_return(true)
|
256
|
+
allow(@filebucket).to receive(:args).and_return([digest_a, digest_b])
|
255
257
|
|
256
|
-
expect(@client).to receive(:diff).with(
|
258
|
+
expect(@client).to receive(:diff).with(digest_a, nil, nil, digest_b)
|
257
259
|
|
258
260
|
@filebucket.diff
|
259
261
|
end
|
260
262
|
|
261
|
-
it "should call the
|
262
|
-
|
263
|
-
|
264
|
-
allow(Puppet::FileSystem).to receive(:exist?).with(
|
265
|
-
allow(Puppet::FileSystem).to receive(:exist?).with(
|
266
|
-
allow(@filebucket).to receive(:args).and_return([
|
263
|
+
it "should call the client diff with a path if the first argument is a file" do
|
264
|
+
digest_a = 'DEADBEEF'
|
265
|
+
digest_b = 'BEEF'
|
266
|
+
allow(Puppet::FileSystem).to receive(:exist?).with(digest_a).and_return(true)
|
267
|
+
allow(Puppet::FileSystem).to receive(:exist?).with(digest_b).and_return(false)
|
268
|
+
allow(@filebucket).to receive(:args).and_return([digest_a, digest_b])
|
267
269
|
|
268
|
-
expect(@client).to receive(:diff).with(nil,
|
270
|
+
expect(@client).to receive(:diff).with(nil, digest_b, digest_a, nil)
|
269
271
|
|
270
272
|
@filebucket.diff
|
271
273
|
end
|
272
274
|
|
273
275
|
it "should call the clien diff with paths if the both arguments are files" do
|
274
|
-
|
275
|
-
|
276
|
-
allow(Puppet::FileSystem).to receive(:exist?).with(
|
277
|
-
allow(Puppet::FileSystem).to receive(:exist?).with(
|
278
|
-
allow(@filebucket).to receive(:args).and_return([
|
276
|
+
digest_a = 'DEADBEEF'
|
277
|
+
digest_b = 'BEEF'
|
278
|
+
allow(Puppet::FileSystem).to receive(:exist?).with(digest_a).and_return(true)
|
279
|
+
allow(Puppet::FileSystem).to receive(:exist?).with(digest_b).and_return(true)
|
280
|
+
allow(@filebucket).to receive(:args).and_return([digest_a, digest_b])
|
279
281
|
|
280
|
-
expect(@client).to receive(:diff).with(nil, nil,
|
282
|
+
expect(@client).to receive(:diff).with(nil, nil, digest_a, digest_b)
|
281
283
|
|
282
284
|
@filebucket.diff
|
283
285
|
end
|
284
286
|
|
285
287
|
it "should fail if only one checksum is given" do
|
286
|
-
|
287
|
-
allow(@filebucket).to receive(:args).and_return([
|
288
|
+
digest_a = 'DEADBEEF'
|
289
|
+
allow(@filebucket).to receive(:args).and_return([digest_a])
|
288
290
|
|
289
291
|
expect { @filebucket.diff }.to raise_error Puppet::Error
|
290
292
|
end
|
@@ -92,7 +92,7 @@ describe Puppet::Application::Ssl, unless: Puppet::Util::Platform.jruby? do
|
|
92
92
|
end
|
93
93
|
|
94
94
|
context 'when submitting a CSR' do
|
95
|
-
let(:csr_path) {
|
95
|
+
let(:csr_path) { Puppet[:hostcsr] }
|
96
96
|
|
97
97
|
before do
|
98
98
|
ssl.command_line.args << 'submit_request'
|
@@ -318,7 +318,7 @@ describe Puppet::Application::Ssl, unless: Puppet::Util::Platform.jruby? do
|
|
318
318
|
end
|
319
319
|
|
320
320
|
it 'deletes the request' do
|
321
|
-
path =
|
321
|
+
path = Puppet[:hostcsr]
|
322
322
|
File.write(path, @host[:csr].to_pem)
|
323
323
|
|
324
324
|
expects_command_to_pass(%r{Removed certificate request #{path}})
|
@@ -7,7 +7,7 @@ describe Puppet::CertificateFactory, :unless => RUBY_PLATFORM == 'java' do
|
|
7
7
|
let :serial do OpenSSL::BN.new('12') end
|
8
8
|
let :name do "example.local" end
|
9
9
|
let :x509_name do OpenSSL::X509::Name.new([['CN', name]]) end
|
10
|
-
let :key do
|
10
|
+
let :key do OpenSSL::PKey::RSA.new(Puppet[:keylength]) end
|
11
11
|
let :csr do
|
12
12
|
csr = Puppet::SSL::CertificateRequest.new(name)
|
13
13
|
csr.generate(key)
|
@@ -189,6 +189,8 @@ describe Puppet::Configurer::Downloader do
|
|
189
189
|
end
|
190
190
|
|
191
191
|
it "should return all changed file paths" do
|
192
|
+
Puppet[:ignore_plugin_errors] = true
|
193
|
+
|
192
194
|
trans = double('transaction')
|
193
195
|
|
194
196
|
catalog = double('catalog')
|
@@ -204,6 +206,8 @@ describe Puppet::Configurer::Downloader do
|
|
204
206
|
end
|
205
207
|
|
206
208
|
it "should yield the resources if a block is given" do
|
209
|
+
Puppet[:ignore_plugin_errors] = true
|
210
|
+
|
207
211
|
trans = double('transaction')
|
208
212
|
|
209
213
|
catalog = double('catalog')
|
@@ -221,6 +225,8 @@ describe Puppet::Configurer::Downloader do
|
|
221
225
|
end
|
222
226
|
|
223
227
|
it "should catch and log exceptions" do
|
228
|
+
Puppet[:ignore_plugin_errors] = true
|
229
|
+
|
224
230
|
expect(Puppet).to receive(:log_exception)
|
225
231
|
# The downloader creates a new catalog for each apply, and really the only object
|
226
232
|
# that it is possible to stub for the purpose of generating a puppet error
|
@@ -230,8 +236,6 @@ describe Puppet::Configurer::Downloader do
|
|
230
236
|
end
|
231
237
|
|
232
238
|
it "raises an exception if catalog application fails" do
|
233
|
-
Puppet[:ignore_plugin_errors] = false
|
234
|
-
|
235
239
|
expect(@dler.file).to receive(:retrieve).and_raise(Puppet::Error, "testing")
|
236
240
|
|
237
241
|
expect {
|
@@ -19,30 +19,68 @@ describe Puppet::Configurer::PluginHandler do
|
|
19
19
|
end
|
20
20
|
end
|
21
21
|
|
22
|
-
|
23
|
-
|
24
|
-
|
22
|
+
context "when i18n is enabled" do
|
23
|
+
before :each do
|
24
|
+
Puppet[:disable_i18n] = false
|
25
|
+
end
|
25
26
|
|
26
|
-
|
27
|
-
|
28
|
-
|
27
|
+
it "downloads plugins, facts, and locales" do
|
28
|
+
times_called = 0
|
29
|
+
allow_any_instance_of(Puppet::Configurer::Downloader).to receive(:evaluate) { times_called += 1 }.and_return([])
|
29
30
|
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
times_called += 1
|
31
|
+
pluginhandler.download_plugins(environment)
|
32
|
+
expect(times_called).to eq(3)
|
33
|
+
end
|
34
34
|
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
35
|
+
it "returns downloaded plugin, fact, and locale filenames" do
|
36
|
+
times_called = 0
|
37
|
+
allow_any_instance_of(Puppet::Configurer::Downloader).to receive(:evaluate) do
|
38
|
+
times_called += 1
|
39
|
+
|
40
|
+
if times_called == 1
|
41
|
+
%w[/a]
|
42
|
+
elsif times_called == 2
|
43
|
+
%w[/b]
|
44
|
+
else
|
45
|
+
%w[/c]
|
46
|
+
end
|
41
47
|
end
|
48
|
+
|
49
|
+
expect(pluginhandler.download_plugins(environment)).to match_array(%w[/a /b /c])
|
50
|
+
expect(times_called).to eq(3)
|
51
|
+
end
|
52
|
+
end
|
53
|
+
|
54
|
+
context "when i18n is disabled" do
|
55
|
+
before :each do
|
56
|
+
Puppet[:disable_i18n] = true
|
57
|
+
end
|
58
|
+
|
59
|
+
it "downloads plugins, facts, but no locales" do
|
60
|
+
times_called = 0
|
61
|
+
allow_any_instance_of(Puppet::Configurer::Downloader).to receive(:evaluate) { times_called += 1 }.and_return([])
|
62
|
+
|
63
|
+
pluginhandler.download_plugins(environment)
|
64
|
+
expect(times_called).to eq(2)
|
42
65
|
end
|
43
66
|
|
44
|
-
|
45
|
-
|
67
|
+
it "returns downloaded plugin, fact, and locale filenames" do
|
68
|
+
times_called = 0
|
69
|
+
allow_any_instance_of(Puppet::Configurer::Downloader).to receive(:evaluate) do
|
70
|
+
times_called += 1
|
71
|
+
|
72
|
+
if times_called == 1
|
73
|
+
%w[/a]
|
74
|
+
elsif times_called == 2
|
75
|
+
%w[/b]
|
76
|
+
else
|
77
|
+
%w[/c]
|
78
|
+
end
|
79
|
+
end
|
80
|
+
|
81
|
+
expect(pluginhandler.download_plugins(environment)).to match_array(%w[/a /b])
|
82
|
+
expect(times_called).to eq(2)
|
83
|
+
end
|
46
84
|
end
|
47
85
|
end
|
48
86
|
|