puppet 6.28.0-universal-darwin → 7.0.0-universal-darwin
Sign up to get free protection for your applications and to get access to all the features.
Potentially problematic release.
This version of puppet might be problematic. Click here for more details.
- checksums.yaml +4 -4
- data/CODEOWNERS +16 -2
- data/CONTRIBUTING.md +5 -5
- data/Gemfile +5 -7
- data/Gemfile.lock +52 -131
- data/README.md +5 -5
- data/conf/fileserver.conf +5 -10
- data/ext/README.environment +8 -0
- data/ext/build_defaults.yaml +1 -1
- data/ext/dbfix.sql +132 -0
- data/ext/debian/README.Debian +8 -0
- data/ext/debian/README.source +2 -0
- data/ext/debian/TODO.Debian +1 -0
- data/ext/debian/changelog.erb +1122 -0
- data/ext/debian/compat +1 -0
- data/ext/debian/control +144 -0
- data/ext/debian/copyright +339 -0
- data/ext/debian/docs +1 -0
- data/ext/debian/fileserver.conf +41 -0
- data/ext/debian/puppet-common.dirs +13 -0
- data/ext/debian/puppet-common.install +3 -0
- data/ext/debian/puppet-common.lintian-overrides +5 -0
- data/ext/debian/puppet-common.manpages +28 -0
- data/ext/debian/puppet-common.postinst +35 -0
- data/ext/debian/puppet-common.postrm +33 -0
- data/ext/debian/puppet-el.dirs +1 -0
- data/ext/debian/puppet-el.emacsen-install +25 -0
- data/ext/debian/puppet-el.emacsen-remove +11 -0
- data/ext/debian/puppet-el.emacsen-startup +9 -0
- data/ext/debian/puppet-el.install +1 -0
- data/ext/debian/puppet-testsuite.install +2 -0
- data/ext/debian/puppet-testsuite.lintian-overrides +4 -0
- data/ext/debian/puppet.lintian-overrides +3 -0
- data/ext/debian/puppet.logrotate +20 -0
- data/ext/debian/puppet.postinst +20 -0
- data/ext/debian/puppet.postrm +20 -0
- data/ext/debian/puppet.preinst +20 -0
- data/ext/debian/puppetmaster-common.install +2 -0
- data/ext/debian/puppetmaster-common.manpages +2 -0
- data/ext/debian/puppetmaster-common.postinst +6 -0
- data/ext/debian/puppetmaster-passenger.dirs +4 -0
- data/ext/debian/puppetmaster-passenger.postinst +162 -0
- data/ext/debian/puppetmaster-passenger.postrm +61 -0
- data/ext/debian/puppetmaster.README.debian +17 -0
- data/ext/debian/puppetmaster.default +14 -0
- data/ext/debian/puppetmaster.init +137 -0
- data/ext/debian/puppetmaster.lintian-overrides +3 -0
- data/ext/debian/puppetmaster.postinst +20 -0
- data/ext/debian/puppetmaster.postrm +5 -0
- data/ext/debian/puppetmaster.preinst +22 -0
- data/ext/debian/rules +132 -0
- data/ext/debian/source/format +1 -0
- data/ext/debian/source/options +1 -0
- data/ext/debian/vim-puppet.README.Debian +13 -0
- data/ext/debian/vim-puppet.dirs +5 -0
- data/ext/debian/vim-puppet.yaml +7 -0
- data/ext/debian/watch +2 -0
- data/ext/freebsd/puppetd +26 -0
- data/ext/freebsd/puppetmasterd +26 -0
- data/ext/gentoo/conf.d/puppet +5 -0
- data/ext/gentoo/conf.d/puppetmaster +12 -0
- data/ext/gentoo/init.d/puppet +38 -0
- data/ext/gentoo/init.d/puppetmaster +51 -0
- data/ext/gentoo/puppet/fileserver.conf +41 -0
- data/ext/ips/puppet-agent +44 -0
- data/ext/ips/puppet-master +44 -0
- data/ext/ips/puppet.p5m.erb +12 -0
- data/ext/ips/puppetagent.xml +42 -0
- data/ext/ips/puppetmaster.xml +42 -0
- data/ext/ips/rules +19 -0
- data/ext/ips/transforms +34 -0
- data/ext/ldap/puppet.schema +24 -0
- data/ext/logcheck/puppet +23 -0
- data/{examples → ext}/nagios/check_puppet.rb +2 -2
- data/ext/osx/file_mapping.yaml +28 -0
- data/ext/osx/postflight.erb +109 -0
- data/ext/osx/preflight.erb +52 -0
- data/ext/osx/prototype.plist.erb +38 -0
- data/ext/osx/puppet.plist +0 -2
- data/ext/project_data.yaml +1 -15
- data/ext/redhat/fileserver.conf +41 -0
- data/ext/redhat/logrotate +21 -0
- data/ext/redhat/puppet.spec.erb +841 -0
- data/ext/redhat/server.init +128 -0
- data/ext/redhat/server.sysconfig +13 -0
- data/{examples/enc → ext}/regexp_nodes/classes/databases +0 -0
- data/{examples/enc → ext}/regexp_nodes/classes/webservers +0 -0
- data/{examples/enc → ext}/regexp_nodes/environment/development +0 -0
- data/{examples/enc → ext}/regexp_nodes/parameters/service/prod +0 -0
- data/{examples/enc → ext}/regexp_nodes/parameters/service/qa +0 -0
- data/{examples/enc → ext}/regexp_nodes/parameters/service/sandbox +0 -0
- data/{examples/enc → ext}/regexp_nodes/regexp_nodes.rb +0 -0
- data/ext/solaris/pkginfo +6 -0
- data/ext/solaris/smf/puppetd.xml +77 -0
- data/ext/solaris/smf/puppetmasterd.xml +77 -0
- data/ext/solaris/smf/svc-puppetd +71 -0
- data/ext/solaris/smf/svc-puppetmasterd +67 -0
- data/ext/suse/puppet.spec +310 -0
- data/ext/suse/server.init +173 -0
- data/ext/windows/service/daemon.rb +6 -5
- data/ext/yaml_nodes.rb +105 -0
- data/install.rb +21 -17
- data/lib/puppet/agent.rb +11 -47
- data/lib/puppet/application/agent.rb +16 -18
- data/lib/puppet/application/apply.rb +4 -24
- data/lib/puppet/application/device.rb +100 -106
- data/lib/puppet/application/filebucket.rb +13 -10
- data/lib/puppet/application/lookup.rb +24 -74
- data/lib/puppet/application/resource.rb +16 -32
- data/lib/puppet/application/script.rb +0 -2
- data/lib/puppet/application/ssl.rb +1 -13
- data/lib/puppet/application.rb +178 -108
- data/lib/puppet/application_support.rb +0 -7
- data/lib/puppet/concurrent/thread_local_singleton.rb +3 -6
- data/lib/puppet/configurer/downloader.rb +1 -2
- data/lib/puppet/configurer/plugin_handler.rb +21 -19
- data/lib/puppet/configurer.rb +86 -183
- data/lib/puppet/confine/variable.rb +1 -1
- data/lib/puppet/defaults.rb +130 -244
- data/lib/puppet/environments.rb +82 -146
- data/lib/puppet/face/facts.rb +5 -103
- data/lib/puppet/face/generate.rb +0 -2
- data/lib/puppet/face/help/action.erb +0 -1
- data/lib/puppet/face/help/face.erb +0 -1
- data/lib/puppet/face/help.rb +1 -1
- data/lib/puppet/face/node/clean.rb +0 -11
- data/lib/puppet/face/plugin.rb +5 -8
- 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/ffi/windows.rb +12 -0
- data/lib/puppet/file_serving/configuration/parser.rb +3 -34
- data/lib/puppet/file_serving/configuration.rb +0 -8
- data/lib/puppet/file_serving/fileset.rb +2 -14
- data/lib/puppet/file_serving/http_metadata.rb +1 -1
- data/lib/puppet/file_serving/metadata.rb +0 -3
- data/lib/puppet/file_serving/mount/file.rb +4 -4
- data/lib/puppet/file_serving/mount.rb +1 -2
- data/lib/puppet/file_system/file_impl.rb +8 -10
- data/lib/puppet/file_system/jruby.rb +1 -1
- data/lib/puppet/file_system/memory_file.rb +1 -8
- data/lib/puppet/file_system/windows.rb +6 -8
- data/lib/puppet/file_system.rb +1 -1
- data/lib/puppet/forge/repository.rb +0 -1
- data/lib/puppet/forge.rb +4 -4
- data/lib/puppet/functions/all.rb +1 -1
- data/lib/puppet/functions/camelcase.rb +1 -1
- data/lib/puppet/functions/capitalize.rb +2 -2
- data/lib/puppet/functions/downcase.rb +2 -2
- data/lib/puppet/functions/empty.rb +0 -8
- data/lib/puppet/functions/find_template.rb +2 -2
- data/lib/puppet/functions/get.rb +5 -5
- data/lib/puppet/functions/group_by.rb +5 -13
- data/lib/puppet/functions/lest.rb +1 -1
- data/lib/puppet/functions/new.rb +100 -100
- data/lib/puppet/functions/next.rb +1 -18
- data/lib/puppet/functions/partition.rb +4 -12
- data/lib/puppet/functions/require.rb +5 -5
- data/lib/puppet/functions/sort.rb +3 -3
- data/lib/puppet/functions/strftime.rb +0 -1
- data/lib/puppet/functions/tree_each.rb +10 -7
- data/lib/puppet/functions/type.rb +4 -4
- data/lib/puppet/functions/unwrap.rb +2 -17
- data/lib/puppet/functions/upcase.rb +2 -2
- data/lib/puppet/functions/versioncmp.rb +2 -6
- data/lib/puppet/generate/models/type/type.rb +4 -1
- data/lib/puppet/generate/type.rb +0 -9
- data/lib/puppet/http/client.rb +167 -137
- 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 -15
- 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 -17
- data/lib/puppet/http/resolver/server_list.rb +10 -25
- data/lib/puppet/http/resolver/settings.rb +4 -7
- data/lib/puppet/http/resolver/srv.rb +7 -11
- data/lib/puppet/http/resolver.rb +5 -15
- 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/ca.rb +11 -22
- data/lib/puppet/http/service/compiler.rb +23 -144
- data/lib/puppet/http/service/file_server.rb +19 -29
- data/lib/puppet/http/service/puppetserver.rb +26 -12
- data/lib/puppet/http/service/report.rb +8 -10
- data/lib/puppet/http/service.rb +12 -26
- data/lib/puppet/http/session.rb +11 -20
- data/lib/puppet/{network/http → http}/site.rb +1 -2
- data/lib/puppet/http.rb +22 -13
- data/lib/puppet/indirector/catalog/compiler.rb +6 -25
- data/lib/puppet/indirector/catalog/rest.rb +2 -5
- data/lib/puppet/indirector/facts/facter.rb +6 -6
- 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 -10
- data/lib/puppet/indirector/file_server.rb +1 -8
- data/lib/puppet/indirector/generic_http.rb +0 -11
- data/lib/puppet/indirector/indirection.rb +1 -1
- 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/resource/ral.rb +1 -6
- data/lib/puppet/indirector/rest.rb +12 -263
- data/lib/puppet/indirector/terminus.rb +0 -4
- data/lib/puppet/interface/documentation.rb +0 -1
- data/lib/puppet/module/plan.rb +1 -0
- data/lib/puppet/module/task.rb +1 -1
- data/lib/puppet/module.rb +0 -1
- data/lib/puppet/module_tool/applications/installer.rb +2 -56
- data/lib/puppet/module_tool/applications/uninstaller.rb +1 -1
- data/lib/puppet/module_tool/applications/upgrader.rb +1 -1
- data/lib/puppet/module_tool/applications.rb +0 -1
- data/lib/puppet/module_tool/errors/shared.rb +2 -34
- data/lib/puppet/network/authconfig.rb +2 -96
- data/lib/puppet/network/authorization.rb +13 -35
- data/lib/puppet/network/formats.rb +0 -67
- data/lib/puppet/network/http/api/indirected_routes.rb +3 -21
- 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.rb +3 -3
- data/lib/puppet/network/http_pool.rb +16 -34
- data/lib/puppet/node/environment.rb +11 -10
- data/lib/puppet/node.rb +2 -31
- data/lib/puppet/pal/json_catalog_encoder.rb +4 -0
- data/lib/puppet/pal/pal_impl.rb +4 -2
- data/lib/puppet/parser/ast/leaf.rb +2 -3
- data/lib/puppet/parser/ast/pops_bridge.rb +0 -38
- data/lib/puppet/parser/compiler/catalog_validator/relationship_validator.rb +14 -39
- data/lib/puppet/parser/compiler.rb +0 -198
- data/lib/puppet/parser/functions/fqdn_rand.rb +6 -14
- data/lib/puppet/parser/resource.rb +1 -70
- data/lib/puppet/parser/scope.rb +0 -1
- data/lib/puppet/parser/templatewrapper.rb +1 -2
- data/lib/puppet/pops/evaluator/closure.rb +5 -7
- data/lib/puppet/pops/evaluator/deferred_resolver.rb +3 -5
- data/lib/puppet/pops/evaluator/evaluator_impl.rb +0 -5
- data/lib/puppet/pops/evaluator/runtime3_resource_support.rb +3 -4
- 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/lookup/lookup_adapter.rb +2 -3
- data/lib/puppet/pops/model/ast.pp +0 -42
- data/lib/puppet/pops/model/ast.rb +0 -291
- data/lib/puppet/pops/model/ast_transformer.rb +1 -1
- data/lib/puppet/pops/model/factory.rb +1 -47
- 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/code_merger.rb +4 -4
- data/lib/puppet/pops/parser/egrammar.ra +0 -58
- data/lib/puppet/pops/parser/eparser.rb +1685 -1896
- data/lib/puppet/pops/parser/lexer2.rb +91 -92
- data/lib/puppet/pops/parser/parser_support.rb +0 -5
- data/lib/puppet/pops/parser/slurp_support.rb +0 -1
- data/lib/puppet/pops/resource/resource_type_impl.rb +2 -24
- data/lib/puppet/pops/serialization/to_stringified_converter.rb +1 -1
- data/lib/puppet/pops/types/p_sem_ver_type.rb +2 -8
- data/lib/puppet/pops/types/p_sensitive_type.rb +0 -10
- data/lib/puppet/pops/types/type_calculator.rb +0 -7
- data/lib/puppet/pops/types/type_formatter.rb +3 -4
- data/lib/puppet/pops/types/type_mismatch_describer.rb +1 -1
- data/lib/puppet/pops/types/type_parser.rb +0 -4
- data/lib/puppet/pops/types/types.rb +1 -2
- 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/aix_object.rb +1 -1
- data/lib/puppet/provider/exec/posix.rb +4 -16
- data/lib/puppet/provider/group/groupadd.rb +10 -18
- data/lib/puppet/provider/nameservice.rb +0 -18
- data/lib/puppet/provider/package/apt.rb +2 -34
- data/lib/puppet/provider/package/aptitude.rb +0 -6
- data/lib/puppet/provider/package/dnfmodule.rb +1 -1
- data/lib/puppet/provider/package/dpkg.rb +0 -10
- data/lib/puppet/provider/package/gem.rb +23 -3
- data/lib/puppet/provider/package/nim.rb +6 -11
- data/lib/puppet/provider/package/pip.rb +3 -16
- data/lib/puppet/provider/package/pkg.rb +2 -23
- data/lib/puppet/provider/package/portage.rb +1 -1
- data/lib/puppet/provider/package/puppet_gem.rb +1 -4
- data/lib/puppet/provider/package/puppetserver_gem.rb +17 -8
- data/lib/puppet/provider/package/windows/exe_package.rb +1 -30
- data/lib/puppet/provider/package/windows/package.rb +1 -2
- data/lib/puppet/provider/package/windows.rb +1 -14
- data/lib/puppet/provider/package/yum.rb +1 -1
- data/lib/puppet/provider/parsedfile.rb +0 -3
- data/lib/puppet/provider/service/base.rb +1 -1
- data/lib/puppet/provider/service/debian.rb +0 -2
- data/lib/puppet/provider/service/init.rb +9 -10
- data/lib/puppet/provider/service/launchd.rb +2 -2
- data/lib/puppet/provider/service/redhat.rb +1 -1
- data/lib/puppet/provider/service/smf.rb +194 -76
- data/lib/puppet/provider/service/systemd.rb +6 -16
- data/lib/puppet/provider/service/upstart.rb +5 -5
- data/lib/puppet/provider/service/windows.rb +0 -38
- data/lib/puppet/provider/user/aix.rb +3 -46
- data/lib/puppet/provider/user/directoryservice.rb +11 -39
- data/lib/puppet/provider/user/useradd.rb +24 -134
- data/lib/puppet/provider.rb +1 -14
- data/lib/puppet/reference/configuration.rb +8 -7
- data/lib/puppet/reference/indirection.rb +1 -1
- data/lib/puppet/reference/providers.rb +2 -2
- data/lib/puppet/resource/catalog.rb +2 -15
- data/lib/puppet/resource/type.rb +3 -119
- data/lib/puppet/resource/type_collection.rb +3 -49
- data/lib/puppet/resource.rb +6 -127
- data/lib/puppet/runtime.rb +2 -13
- data/lib/puppet/settings/environment_conf.rb +0 -1
- 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/settings.rb +82 -98
- 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 +36 -75
- data/lib/puppet/ssl/state_machine.rb +20 -14
- data/lib/puppet/ssl/verifier.rb +2 -6
- data/lib/puppet/ssl.rb +10 -6
- data/lib/puppet/test/test_helper.rb +2 -7
- data/lib/puppet/transaction/additional_resource_generator.rb +1 -1
- data/lib/puppet/transaction/persistence.rb +1 -21
- data/lib/puppet/transaction/report.rb +3 -19
- data/lib/puppet/transaction.rb +1 -7
- data/lib/puppet/type/exec.rb +6 -36
- data/lib/puppet/type/file/checksum.rb +1 -1
- data/lib/puppet/type/file/data_sync.rb +1 -1
- data/lib/puppet/type/file/mode.rb +0 -6
- data/lib/puppet/type/file/selcontext.rb +1 -1
- data/lib/puppet/type/file/source.rb +1 -1
- data/lib/puppet/type/file.rb +12 -32
- data/lib/puppet/type/filebucket.rb +4 -4
- data/lib/puppet/type/group.rb +1 -0
- data/lib/puppet/type/package.rb +8 -16
- data/lib/puppet/type/resources.rb +1 -1
- data/lib/puppet/type/service.rb +41 -26
- data/lib/puppet/type/tidy.rb +3 -22
- data/lib/puppet/type/user.rb +13 -35
- data/lib/puppet/type.rb +1 -77
- data/lib/puppet/util/autoload.rb +8 -1
- data/lib/puppet/util/command_line.rb +1 -1
- data/lib/puppet/util/execution.rb +0 -11
- data/lib/puppet/util/filetype.rb +2 -2
- data/lib/puppet/util/http_proxy.rb +2 -215
- data/lib/puppet/util/json.rb +0 -20
- data/lib/puppet/util/log.rb +4 -8
- data/lib/puppet/util/logging.rb +25 -1
- data/lib/puppet/util/monkey_patches.rb +2 -59
- data/lib/puppet/util/package.rb +16 -25
- data/lib/puppet/util/pidlock.rb +1 -1
- data/lib/puppet/util/posix.rb +5 -54
- data/lib/puppet/util/rdoc/parser/puppet_parser_core.rb +1 -1
- 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/selinux.rb +4 -30
- data/lib/puppet/util/suidmanager.rb +2 -1
- data/lib/puppet/util/symbolic_file_mode.rb +17 -29
- data/lib/puppet/util/tagging.rb +0 -1
- data/lib/puppet/util/windows/adsi.rb +0 -46
- 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/principal.rb +2 -9
- data/lib/puppet/util/windows/process.rb +4 -226
- data/lib/puppet/util/windows/service.rb +11 -457
- data/lib/puppet/util/windows/sid.rb +2 -6
- data/lib/puppet/util/windows/string.rb +12 -13
- data/lib/puppet/util/windows/user.rb +2 -0
- data/lib/puppet/util/windows.rb +3 -11
- data/lib/puppet/util/yaml.rb +1 -42
- data/lib/puppet/util.rb +5 -5
- data/lib/puppet/vendor/require_vendored.rb +0 -1
- data/lib/puppet/version.rb +1 -1
- data/lib/puppet/x509/cert_provider.rb +29 -1
- data/lib/puppet/x509.rb +5 -1
- data/lib/puppet.rb +34 -27
- data/locales/puppet.pot +9633 -5
- data/man/man5/puppet.conf.5 +286 -401
- data/man/man8/puppet-agent.8 +2 -5
- data/man/man8/puppet-apply.8 +2 -2
- data/man/man8/puppet-catalog.8 +9 -9
- data/man/man8/puppet-config.8 +1 -1
- data/man/man8/puppet-describe.8 +1 -1
- data/man/man8/puppet-device.8 +2 -2
- data/man/man8/puppet-doc.8 +1 -1
- data/man/man8/puppet-epp.8 +1 -1
- data/man/man8/puppet-facts.8 +8 -51
- 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 +6 -9
- data/man/man8/puppet-module.8 +3 -60
- data/man/man8/puppet-node.8 +5 -5
- data/man/man8/puppet-parser.8 +1 -1
- data/man/man8/puppet-plugin.8 +1 -1
- data/man/man8/puppet-report.8 +5 -5
- data/man/man8/puppet-resource.8 +1 -1
- data/man/man8/puppet-script.8 +2 -2
- data/man/man8/puppet-ssl.8 +1 -5
- data/man/man8/puppet.8 +2 -2
- data/spec/fixtures/ssl/127.0.0.1-key.pem +57 -107
- data/spec/fixtures/ssl/127.0.0.1.pem +31 -52
- data/spec/fixtures/ssl/bad-basic-constraints.pem +35 -57
- data/spec/fixtures/ssl/bad-int-basic-constraints.pem +35 -57
- data/spec/fixtures/ssl/ca.pem +35 -57
- data/spec/fixtures/ssl/crl.pem +18 -28
- data/spec/fixtures/ssl/ec-key.pem +11 -11
- data/spec/fixtures/ssl/ec.pem +24 -33
- data/spec/fixtures/ssl/encrypted-ec-key.pem +12 -12
- data/spec/fixtures/ssl/encrypted-key.pem +58 -108
- data/spec/fixtures/ssl/intermediate-agent-crl.pem +19 -28
- data/spec/fixtures/ssl/intermediate-agent.pem +36 -57
- data/spec/fixtures/ssl/intermediate-crl.pem +21 -31
- data/spec/fixtures/ssl/intermediate.pem +36 -57
- data/spec/fixtures/ssl/pluto-key.pem +57 -107
- data/spec/fixtures/ssl/pluto.pem +30 -52
- data/spec/fixtures/ssl/request-key.pem +57 -107
- data/spec/fixtures/ssl/request.pem +26 -47
- data/spec/fixtures/ssl/revoked-key.pem +57 -107
- data/spec/fixtures/ssl/revoked.pem +30 -52
- data/spec/fixtures/ssl/signed-key.pem +57 -107
- data/spec/fixtures/ssl/signed.pem +30 -52
- data/spec/fixtures/ssl/tampered-cert.pem +30 -52
- data/spec/fixtures/ssl/tampered-csr.pem +26 -47
- data/spec/fixtures/ssl/unknown-127.0.0.1-key.pem +57 -107
- data/spec/fixtures/ssl/unknown-127.0.0.1.pem +29 -50
- data/spec/fixtures/ssl/unknown-ca-key.pem +57 -107
- data/spec/fixtures/ssl/unknown-ca.pem +33 -55
- data/spec/fixtures/unit/forge/bacula.json +1 -1
- data/spec/fixtures/unit/provider/service/smf/{svcs.out → svcs_instances.out} +0 -0
- data/spec/fixtures/unit/provider/user/aix/aix_passwd_file.out +0 -4
- data/spec/integration/application/agent_spec.rb +50 -406
- data/spec/integration/application/apply_spec.rb +1 -20
- data/spec/integration/application/filebucket_spec.rb +16 -32
- data/spec/integration/application/help_spec.rb +2 -0
- data/spec/integration/application/lookup_spec.rb +50 -81
- data/spec/integration/application/module_spec.rb +0 -21
- data/spec/integration/application/plugin_spec.rb +24 -2
- data/spec/integration/configurer_spec.rb +2 -18
- data/spec/integration/defaults_spec.rb +14 -3
- data/spec/integration/environments/settings_interpolation_spec.rb +4 -0
- data/spec/integration/http/client_spec.rb +4 -63
- data/spec/integration/indirector/direct_file_server_spec.rb +3 -1
- data/spec/integration/indirector/facts/facter_spec.rb +39 -93
- 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 -47
- data/spec/integration/resource/type_collection_spec.rb +6 -2
- data/spec/integration/transaction/report_spec.rb +1 -1
- data/spec/integration/transaction_spec.rb +9 -4
- data/spec/integration/type/exec_spec.rb +45 -70
- data/spec/integration/type/file_spec.rb +7 -6
- data/spec/integration/type/package_spec.rb +6 -6
- data/spec/integration/util/rdoc/parser_spec.rb +1 -1
- data/spec/integration/util/windows/adsi_spec.rb +1 -21
- data/spec/integration/util/windows/monkey_patches/process_spec.rb +231 -0
- data/spec/integration/util/windows/principal_spec.rb +0 -21
- data/spec/integration/util/windows/process_spec.rb +9 -1
- data/spec/integration/util/windows/registry_spec.rb +10 -6
- data/spec/integration/util/windows/security_spec.rb +1 -1
- data/spec/lib/matchers/include.rb +27 -0
- data/spec/lib/matchers/include_spec.rb +32 -0
- data/spec/lib/puppet/test_ca.rb +2 -7
- data/spec/lib/puppet_spec/https.rb +1 -1
- data/spec/lib/puppet_spec/modules.rb +2 -13
- data/spec/lib/puppet_spec/puppetserver.rb +3 -55
- data/spec/lib/puppet_spec/settings.rb +1 -1
- data/spec/shared_behaviours/documentation_on_faces.rb +2 -0
- data/spec/spec_helper.rb +17 -13
- data/spec/unit/agent_spec.rb +8 -38
- data/spec/unit/application/agent_spec.rb +19 -33
- data/spec/unit/application/apply_spec.rb +56 -76
- data/spec/unit/application/facts_spec.rb +12 -456
- data/spec/unit/application/filebucket_spec.rb +43 -39
- data/spec/unit/application/lookup_spec.rb +10 -131
- data/spec/unit/application/resource_spec.rb +0 -29
- data/spec/unit/application/ssl_spec.rb +2 -25
- data/spec/unit/application_spec.rb +9 -51
- data/spec/unit/certificate_factory_spec.rb +1 -1
- data/spec/unit/configurer/downloader_spec.rb +6 -8
- data/spec/unit/configurer/plugin_handler_spec.rb +56 -18
- data/spec/unit/configurer_spec.rb +68 -327
- data/spec/unit/confine/feature_spec.rb +1 -1
- data/spec/unit/confine_spec.rb +2 -8
- data/spec/unit/context/trusted_information_spec.rb +2 -6
- data/spec/unit/daemon_spec.rb +11 -2
- data/spec/unit/defaults_spec.rb +68 -55
- data/spec/unit/environments_spec.rb +68 -408
- data/spec/unit/face/generate_spec.rb +0 -64
- data/spec/unit/face/node_spec.rb +11 -0
- data/spec/unit/face/plugin_spec.rb +73 -33
- data/spec/unit/file_bucket/dipper_spec.rb +2 -2
- data/spec/unit/file_bucket/file_spec.rb +1 -1
- data/spec/unit/file_serving/configuration/parser_spec.rb +15 -41
- data/spec/unit/file_serving/configuration_spec.rb +10 -26
- data/spec/unit/file_serving/fileset_spec.rb +0 -60
- data/spec/unit/file_serving/metadata_spec.rb +3 -3
- data/spec/unit/file_serving/terminus_helper_spec.rb +4 -11
- data/spec/unit/file_system_spec.rb +4 -56
- data/spec/unit/forge/module_release_spec.rb +10 -5
- data/spec/unit/functions/assert_type_spec.rb +1 -1
- 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/empty_spec.rb +0 -10
- data/spec/unit/functions/logging_spec.rb +0 -1
- data/spec/unit/functions/lookup_spec.rb +0 -64
- data/spec/unit/functions/unwrap_spec.rb +0 -8
- data/spec/unit/functions/upcase_spec.rb +1 -1
- data/spec/unit/functions/versioncmp_spec.rb +4 -40
- data/spec/unit/functions4_spec.rb +2 -2
- data/spec/unit/gettext/config_spec.rb +0 -12
- data/spec/unit/http/client_spec.rb +8 -84
- 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 -30
- 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 -193
- 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/catalog/compiler_spec.rb +10 -101
- data/spec/unit/indirector/catalog/rest_spec.rb +0 -8
- data/spec/unit/indirector/face_spec.rb +1 -0
- data/spec/unit/indirector/facts/facter_spec.rb +3 -0
- data/spec/unit/indirector/file_bucket_file/file_spec.rb +5 -3
- data/spec/unit/indirector/file_bucket_file/selector_spec.rb +8 -26
- data/spec/unit/indirector/file_content/rest_spec.rb +0 -4
- data/spec/unit/indirector/file_metadata/rest_spec.rb +0 -4
- data/spec/unit/indirector/file_server_spec.rb +1 -15
- data/spec/unit/indirector/indirection_spec.rb +15 -18
- data/spec/unit/indirector/report/rest_spec.rb +2 -17
- data/spec/unit/indirector/request_spec.rb +0 -264
- data/spec/unit/indirector/resource/ral_spec.rb +75 -40
- data/spec/unit/indirector/rest_spec.rb +98 -752
- data/spec/unit/indirector/store_configs_spec.rb +7 -0
- data/spec/unit/indirector_spec.rb +2 -2
- data/spec/unit/interface/action_spec.rb +9 -0
- data/spec/unit/module_spec.rb +1 -15
- data/spec/unit/module_tool/applications/installer_spec.rb +0 -105
- 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 +4 -51
- data/spec/unit/network/http/api/indirected_routes_spec.rb +5 -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 -60
- data/spec/unit/parser/compiler_spec.rb +19 -3
- data/spec/unit/parser/functions/create_resources_spec.rb +2 -20
- data/spec/unit/parser/functions/fqdn_rand_spec.rb +1 -15
- data/spec/unit/parser/resource_spec.rb +8 -14
- data/spec/unit/parser/templatewrapper_spec.rb +5 -16
- 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_containers_spec.rb +13 -2
- 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/serialization/to_stringified_spec.rb +0 -5
- data/spec/unit/pops/types/p_sem_ver_type_spec.rb +0 -18
- data/spec/unit/pops/types/p_sensitive_type_spec.rb +0 -18
- data/spec/unit/pops/types/type_calculator_spec.rb +6 -12
- data/spec/unit/pops/types/type_factory_spec.rb +1 -1
- data/spec/unit/pops/validator/validator_spec.rb +61 -51
- data/spec/unit/pops/visitor_spec.rb +1 -1
- data/spec/unit/property_spec.rb +0 -1
- data/spec/unit/provider/group/groupadd_spec.rb +2 -5
- data/spec/unit/provider/nameservice_spec.rb +64 -122
- data/spec/unit/provider/package/apt_spec.rb +23 -28
- data/spec/unit/provider/package/aptitude_spec.rb +1 -1
- data/spec/unit/provider/package/base_spec.rb +5 -6
- data/spec/unit/provider/package/dnfmodule_spec.rb +1 -10
- data/spec/unit/provider/package/dpkg_spec.rb +0 -48
- data/spec/unit/provider/package/gem_spec.rb +33 -1
- data/spec/unit/provider/package/nim_spec.rb +0 -42
- data/spec/unit/provider/package/pacman_spec.rb +12 -18
- data/spec/unit/provider/package/pip2_spec.rb +1 -1
- data/spec/unit/provider/package/pip3_spec.rb +1 -1
- data/spec/unit/provider/package/pip_spec.rb +12 -44
- data/spec/unit/provider/package/pkg_spec.rb +4 -29
- data/spec/unit/provider/package/pkgdmg_spec.rb +4 -0
- data/spec/unit/provider/package/puppet_gem_spec.rb +4 -3
- data/spec/unit/provider/package/puppetserver_gem_spec.rb +3 -3
- data/spec/unit/provider/package/windows/exe_package_spec.rb +0 -17
- data/spec/unit/provider/parsedfile_spec.rb +0 -10
- data/spec/unit/provider/service/gentoo_spec.rb +5 -6
- data/spec/unit/provider/service/init_spec.rb +9 -16
- data/spec/unit/provider/service/launchd_spec.rb +0 -11
- data/spec/unit/provider/service/openwrt_spec.rb +29 -23
- data/spec/unit/provider/service/redhat_spec.rb +2 -3
- data/spec/unit/provider/service/smf_spec.rb +401 -165
- data/spec/unit/provider/service/systemd_spec.rb +9 -54
- data/spec/unit/provider/service/windows_spec.rb +0 -203
- data/spec/unit/provider/user/aix_spec.rb +0 -105
- data/spec/unit/provider/user/directoryservice_spec.rb +36 -68
- data/spec/unit/provider/user/hpux_spec.rb +1 -1
- data/spec/unit/provider/user/pw_spec.rb +0 -2
- data/spec/unit/provider/user/useradd_spec.rb +5 -114
- data/spec/unit/provider_spec.rb +12 -22
- data/spec/unit/puppet_spec.rb +4 -12
- data/spec/unit/resource/catalog_spec.rb +2 -15
- data/spec/unit/resource/type_collection_spec.rb +2 -22
- data/spec/unit/resource/type_spec.rb +1 -1
- data/spec/unit/resource_spec.rb +12 -125
- 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 +79 -110
- data/spec/unit/ssl/base_spec.rb +37 -3
- data/spec/unit/ssl/certificate_request_spec.rb +21 -45
- data/spec/unit/ssl/certificate_spec.rb +2 -11
- data/spec/unit/ssl/ssl_provider_spec.rb +3 -80
- data/spec/unit/ssl/state_machine_spec.rb +5 -21
- data/spec/unit/ssl/verifier_spec.rb +0 -21
- data/spec/unit/transaction/additional_resource_generator_spec.rb +9 -3
- data/spec/unit/transaction/event_manager_spec.rb +11 -14
- data/spec/unit/transaction/persistence_spec.rb +0 -51
- 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 +55 -96
- data/spec/unit/type/exec_spec.rb +29 -76
- data/spec/unit/type/file/checksum_spec.rb +6 -6
- data/spec/unit/type/file/content_spec.rb +2 -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/selinux_spec.rb +5 -3
- data/spec/unit/type/file/source_spec.rb +4 -5
- data/spec/unit/type/file_spec.rb +18 -6
- data/spec/unit/type/group_spec.rb +6 -13
- data/spec/unit/type/package_spec.rb +1 -1
- data/spec/unit/type/resources_spec.rb +7 -7
- data/spec/unit/type/service_spec.rb +189 -87
- data/spec/unit/type/tidy_spec.rb +8 -24
- data/spec/unit/type_spec.rb +24 -4
- data/spec/unit/util/at_fork_spec.rb +2 -2
- data/spec/unit/util/autoload_spec.rb +1 -5
- data/spec/unit/util/backups_spec.rb +2 -3
- data/spec/unit/util/execution_spec.rb +11 -44
- data/spec/unit/util/inifile_spec.rb +14 -6
- data/spec/unit/util/log_spec.rb +7 -8
- data/spec/unit/util/logging_spec.rb +3 -5
- data/spec/unit/util/monkey_patches_spec.rb +0 -6
- data/spec/unit/util/posix_spec.rb +15 -363
- data/spec/unit/util/run_mode_spec.rb +21 -121
- data/spec/unit/util/selinux_spec.rb +68 -163
- data/spec/unit/util/storage_spec.rb +1 -3
- data/spec/unit/util/suidmanager_spec.rb +41 -44
- data/spec/unit/util/windows/sid_spec.rb +0 -41
- data/spec/unit/util/windows/string_spec.rb +1 -3
- data/spec/unit/util/yaml_spec.rb +13 -92
- data/spec/unit/util_spec.rb +6 -31
- data/tasks/generate_cert_fixtures.rake +7 -17
- data/tasks/parallel.rake +3 -3
- metadata +138 -233
- data/conf/auth.conf +0 -150
- data/ext/README.md +0 -13
- 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/facter_impl.rb +0 -96
- data/lib/puppet/ffi/posix/constants.rb +0 -14
- data/lib/puppet/ffi/posix/functions.rb +0 -24
- data/lib/puppet/ffi/posix.rb +0 -10
- data/lib/puppet/file_serving/mount/scripts.rb +0 -24
- 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/local.rb +0 -12
- data/lib/puppet/indirector/status/rest.rb +0 -27
- data/lib/puppet/indirector/status.rb +0 -3
- 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/settings/alias_setting.rb +0 -37
- data/lib/puppet/ssl/host.rb +0 -505
- data/lib/puppet/ssl/key.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/validator.rb +0 -61
- 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 -81
- 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/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/lib/puppet/vendor/pathspec/lib/pathspec.rb +0 -122
- 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/fixtures/integration/application/agent/cached_deferred_catalog.json +0 -92
- data/spec/fixtures/integration/application/agent/lib/facter/agent_spec_role.rb +0 -3
- data/spec/fixtures/integration/l10n/envs/prod/modules/demo/Gemfile +0 -4
- data/spec/fixtures/integration/l10n/envs/prod/modules/demo/Rakefile +0 -3
- data/spec/fixtures/integration/l10n/envs/prod/modules/demo/lib/puppet/functions/l10n.rb +0 -8
- data/spec/fixtures/integration/l10n/envs/prod/modules/demo/locales/config.yaml +0 -25
- data/spec/fixtures/integration/l10n/envs/prod/modules/demo/locales/ja/puppet-l10n.po +0 -19
- data/spec/fixtures/integration/l10n/envs/prod/modules/demo/locales/puppet-l10n.pot +0 -20
- data/spec/fixtures/integration/l10n/envs/prod/modules/demo/metadata.json +0 -8
- data/spec/fixtures/ssl/oid-key.pem +0 -117
- data/spec/fixtures/ssl/oid.pem +0 -69
- data/spec/fixtures/ssl/trusted_oid_mapping.yaml +0 -5
- data/spec/fixtures/unit/provider/service/systemd/list_unit_files_services_vendor_preset +0 -9
- data/spec/integration/application/resource_spec.rb +0 -68
- data/spec/integration/application/ssl_spec.rb +0 -20
- data/spec/integration/l10n/compiler_spec.rb +0 -37
- data/spec/integration/network/authconfig_spec.rb +0 -256
- data/spec/integration/util/windows/monkey_patches/dir_spec.rb +0 -11
- data/spec/shared_contexts/l10n.rb +0 -32
- data/spec/unit/application/man_spec.rb +0 -52
- data/spec/unit/capability_spec.rb +0 -414
- data/spec/unit/concurrent/thread_local_singleton_spec.rb +0 -39
- 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/facter_impl_spec.rb +0 -31
- data/spec/unit/file_serving/mount/scripts_spec.rb +0 -69
- 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 -407
- 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/evaluator/deferred_resolver_spec.rb +0 -20
- 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/json_spec.rb +0 -126
- data/spec/unit/util/ssl_spec.rb +0 -91
- data/spec/unit/util/windows_spec.rb +0 -23
data/spec/spec_helper.rb
CHANGED
@@ -68,14 +68,26 @@ VCR.turn_off!
|
|
68
68
|
RSpec.configure do |config|
|
69
69
|
include PuppetSpec::Fixtures
|
70
70
|
|
71
|
-
|
71
|
+
# Examples or groups can selectively tag themselves as broken.
|
72
|
+
# For example;
|
73
|
+
#
|
74
|
+
# rbv = "#{RUBY_VERSION}-p#{RbConfig::CONFIG['PATCHLEVEL']}"
|
75
|
+
# describe "mostly working", :broken => false unless rbv == "1.9.3-p327" do
|
76
|
+
# it "parses a valid IP" do
|
77
|
+
# IPAddr.new("::2:3:4:5:6:7:8")
|
78
|
+
# end
|
79
|
+
# end
|
80
|
+
exclude_filters = {:broken => true}
|
72
81
|
exclude_filters[:benchmark] = true unless ENV['BENCHMARK']
|
73
82
|
config.filter_run_excluding exclude_filters
|
74
83
|
|
75
84
|
config.filter_run_when_matching :focus
|
76
85
|
|
77
86
|
config.mock_with :rspec do |mocks|
|
78
|
-
|
87
|
+
# We really should have this on, but it breaks a _lot_ of tests. We'll
|
88
|
+
# need to go through and fix those tests first before it can be enabled
|
89
|
+
# for real.
|
90
|
+
mocks.verify_partial_doubles = false
|
79
91
|
end
|
80
92
|
|
81
93
|
tmpdir = Puppet::FileSystem.expand_path(Dir.mktmpdir("rspecrun"))
|
@@ -136,6 +148,7 @@ RSpec.configure do |config|
|
|
136
148
|
|
137
149
|
base = PuppetSpec::Files.tmpdir('tmp_settings')
|
138
150
|
Puppet[:vardir] = File.join(base, 'var')
|
151
|
+
Puppet[:publicdir] = File.join(base, 'public')
|
139
152
|
Puppet[:confdir] = File.join(base, 'etc')
|
140
153
|
Puppet[:codedir] = File.join(base, 'code')
|
141
154
|
Puppet[:logdir] = "$vardir/log"
|
@@ -143,6 +156,7 @@ RSpec.configure do |config|
|
|
143
156
|
Puppet[:hiera_config] = File.join(base, 'hiera')
|
144
157
|
|
145
158
|
FileUtils.mkdir_p Puppet[:statedir]
|
159
|
+
FileUtils.mkdir_p Puppet[:publicdir]
|
146
160
|
|
147
161
|
Puppet::Test::TestHelper.before_each_test()
|
148
162
|
end
|
@@ -151,20 +165,10 @@ RSpec.configure do |config|
|
|
151
165
|
PUPPET_FACTER_2_GCE_URL = %r{^http://metadata/computeMetadata/v1(beta1)?}.freeze
|
152
166
|
PUPPET_FACTER_3_GCE_URL = "http://metadata.google.internal/computeMetadata/v1/?recursive=true&alt=json".freeze
|
153
167
|
|
154
|
-
# Facter azure metadata endpoint
|
155
|
-
PUPPET_FACTER_AZ_URL = "http://169.254.169.254/metadata/instance?api-version=2020-09-01"
|
156
|
-
|
157
|
-
# Facter EC2 endpoint
|
158
|
-
PUPPET_FACTER_EC2_METADATA_URL = 'http://169.254.169.254/latest/meta-data/'
|
159
|
-
PUPPET_FACTER_EC2_USERDATA_URL = 'http://169.254.169.254/latest/user-data/'
|
160
|
-
|
161
168
|
config.around :each do |example|
|
162
|
-
# Ignore requests from Facter
|
169
|
+
# Ignore requests from Facter GCE fact in Travis
|
163
170
|
stub_request(:get, PUPPET_FACTER_2_GCE_URL)
|
164
171
|
stub_request(:get, PUPPET_FACTER_3_GCE_URL)
|
165
|
-
stub_request(:get, PUPPET_FACTER_AZ_URL)
|
166
|
-
stub_request(:get, PUPPET_FACTER_EC2_METADATA_URL)
|
167
|
-
stub_request(:get, PUPPET_FACTER_EC2_USERDATA_URL)
|
168
172
|
|
169
173
|
# Enable VCR if the example is tagged with `:vcr` metadata.
|
170
174
|
if example.metadata[:vcr]
|
data/spec/unit/agent_spec.rb
CHANGED
@@ -3,13 +3,9 @@ require 'puppet/agent'
|
|
3
3
|
require 'puppet/configurer'
|
4
4
|
|
5
5
|
class AgentTestClient
|
6
|
-
def
|
7
|
-
end
|
8
|
-
|
9
|
-
def run(client_args)
|
6
|
+
def run
|
10
7
|
# no-op
|
11
8
|
end
|
12
|
-
|
13
9
|
def stop
|
14
10
|
# no-op
|
15
11
|
end
|
@@ -24,8 +20,6 @@ end
|
|
24
20
|
|
25
21
|
describe Puppet::Agent do
|
26
22
|
before do
|
27
|
-
allow(Puppet::Status.indirection).to receive(:find).and_return(Puppet::Status.new("version" => Puppet.version))
|
28
|
-
|
29
23
|
@agent = Puppet::Agent.new(AgentTestClient, false)
|
30
24
|
|
31
25
|
# make Puppet::Application safe for stubbing; restore in an :after block; silence warnings for this.
|
@@ -38,10 +32,6 @@ describe Puppet::Agent do
|
|
38
32
|
end
|
39
33
|
end
|
40
34
|
end
|
41
|
-
|
42
|
-
ssl_context = Puppet::SSL::SSLContext.new
|
43
|
-
machine = instance_double("Puppet::SSL::StateMachine", ensure_client_certificate: ssl_context)
|
44
|
-
allow(Puppet::SSL::StateMachine).to receive(:new).and_return(machine)
|
45
35
|
end
|
46
36
|
|
47
37
|
after do
|
@@ -59,10 +49,11 @@ describe Puppet::Agent do
|
|
59
49
|
|
60
50
|
it "should create an instance of its client class and run it when asked to run" do
|
61
51
|
client = double('client')
|
62
|
-
|
52
|
+
expect(AgentTestClient).to receive(:new).and_return(client)
|
63
53
|
|
64
|
-
allow(@agent).to receive(:disabled?).and_return(false)
|
65
54
|
expect(client).to receive(:run)
|
55
|
+
|
56
|
+
allow(@agent).to receive(:disabled?).and_return(false)
|
66
57
|
@agent.run
|
67
58
|
end
|
68
59
|
|
@@ -99,12 +90,11 @@ describe Puppet::Agent do
|
|
99
90
|
|
100
91
|
describe "when being run" do
|
101
92
|
before do
|
93
|
+
allow(AgentTestClient).to receive(:lockfile_path).and_return("/my/lock")
|
102
94
|
allow(@agent).to receive(:disabled?).and_return(false)
|
103
95
|
end
|
104
96
|
|
105
97
|
it "should splay" do
|
106
|
-
Puppet[:splay] = true
|
107
|
-
|
108
98
|
expect(@agent).to receive(:splay)
|
109
99
|
|
110
100
|
@agent.run
|
@@ -187,26 +177,6 @@ describe Puppet::Agent do
|
|
187
177
|
expect(@agent.run).to eq(:result)
|
188
178
|
end
|
189
179
|
|
190
|
-
it "should check if it's disabled after splaying and log a message" do
|
191
|
-
Puppet[:splay] = true
|
192
|
-
Puppet[:splaylimit] = '5s'
|
193
|
-
Puppet[:onetime] = true
|
194
|
-
|
195
|
-
expect(@agent).to receive(:disabled?).and_return(false, true)
|
196
|
-
|
197
|
-
allow(Puppet).to receive(:notice).and_call_original
|
198
|
-
expect(Puppet).to receive(:notice).with(/Skipping run of .*; administratively disabled.*/)
|
199
|
-
@agent.run
|
200
|
-
end
|
201
|
-
|
202
|
-
it "should check if it's disabled after acquiring the lock and log a message" do
|
203
|
-
expect(@agent).to receive(:disabled?).and_return(false, true)
|
204
|
-
|
205
|
-
allow(Puppet).to receive(:notice).and_call_original
|
206
|
-
expect(Puppet).to receive(:notice).with(/Skipping run of .*; administratively disabled.*/)
|
207
|
-
@agent.run
|
208
|
-
end
|
209
|
-
|
210
180
|
describe "and a puppet agent is already running" do
|
211
181
|
before(:each) do
|
212
182
|
allow_any_instance_of(Object).to receive(:sleep)
|
@@ -216,14 +186,14 @@ describe Puppet::Agent do
|
|
216
186
|
allow(lockfile).to receive(:lock).and_return(false)
|
217
187
|
end
|
218
188
|
|
219
|
-
it "should notify that a run is already in
|
189
|
+
it "should notify that a run is already in progres" do
|
220
190
|
client = AgentTestClient.new
|
221
191
|
expect(AgentTestClient).to receive(:new).and_return(client)
|
222
192
|
expect(Puppet).to receive(:notice).with(/Run of .* already in progress; skipping .* exists/)
|
223
193
|
@agent.run
|
224
194
|
end
|
225
195
|
|
226
|
-
it "should inform that a run is already in
|
196
|
+
it "should inform that a run is already in progres and try to run every X seconds if waitforlock is used" do
|
227
197
|
# so the locked file exists
|
228
198
|
allow(File).to receive(:file?).and_return(true)
|
229
199
|
# so we don't have to wait again for the run to exit (default maxwaitforcert is 60)
|
@@ -252,7 +222,7 @@ describe Puppet::Agent do
|
|
252
222
|
@agent.run
|
253
223
|
end
|
254
224
|
end
|
255
|
-
|
225
|
+
|
256
226
|
describe "when should_fork is true", :if => Puppet.features.posix? && RUBY_PLATFORM != 'java' do
|
257
227
|
before do
|
258
228
|
@agent = Puppet::Agent.new(AgentTestClient, true)
|
@@ -4,11 +4,6 @@ require 'puppet/agent'
|
|
4
4
|
require 'puppet/application/agent'
|
5
5
|
require 'puppet/daemon'
|
6
6
|
|
7
|
-
class TestAgentClientClass
|
8
|
-
def initialize(transaction_uuid = nil, job_id = nil); end
|
9
|
-
def run(options = {}); end
|
10
|
-
end
|
11
|
-
|
12
7
|
describe Puppet::Application::Agent do
|
13
8
|
include PuppetSpec::Files
|
14
9
|
|
@@ -17,20 +12,13 @@ describe Puppet::Application::Agent do
|
|
17
12
|
before :each do
|
18
13
|
@puppetd = Puppet::Application[:agent]
|
19
14
|
|
20
|
-
@
|
21
|
-
allow(TestAgentClientClass).to receive(:new).and_return(@client)
|
22
|
-
|
23
|
-
@agent = Puppet::Agent.new(TestAgentClientClass, false)
|
15
|
+
@agent = double('agent')
|
24
16
|
allow(Puppet::Agent).to receive(:new).and_return(@agent)
|
25
17
|
|
26
|
-
|
27
|
-
@daemon = Puppet::Daemon.new(@agent, Puppet::Util::Pidlock.new(Puppet[:pidfile]))
|
18
|
+
@daemon = Puppet::Daemon.new(@agent, nil)
|
28
19
|
allow(@daemon).to receive(:daemonize)
|
20
|
+
allow(@daemon).to receive(:start)
|
29
21
|
allow(@daemon).to receive(:stop)
|
30
|
-
# simulate one run so we don't infinite looptwo runs of the agent, then return so we don't infinite loop
|
31
|
-
allow(@daemon).to receive(:run_event_loop) do
|
32
|
-
@agent.run(splay: false)
|
33
|
-
end
|
34
22
|
allow(Puppet::Daemon).to receive(:new).and_return(@daemon)
|
35
23
|
Puppet[:daemonize] = false
|
36
24
|
|
@@ -104,6 +92,10 @@ describe Puppet::Application::Agent do
|
|
104
92
|
end
|
105
93
|
|
106
94
|
describe "when handling options" do
|
95
|
+
before do
|
96
|
+
allow(@puppetd.command_line).to receive(:args).and_return([])
|
97
|
+
end
|
98
|
+
|
107
99
|
[:enable, :debug, :fqdn, :test, :verbose, :digest].each do |option|
|
108
100
|
it "should declare handle_#{option} method" do
|
109
101
|
expect(@puppetd).to respond_to("handle_#{option}".to_sym)
|
@@ -135,34 +127,32 @@ describe Puppet::Application::Agent do
|
|
135
127
|
end
|
136
128
|
|
137
129
|
it "should set waitforcert to 0 with --onetime and if --waitforcert wasn't given" do
|
138
|
-
allow(@
|
130
|
+
allow(@agent).to receive(:run).and_return(2)
|
139
131
|
Puppet[:onetime] = true
|
140
132
|
|
141
|
-
expect(Puppet::SSL::StateMachine).to receive(:new).with(
|
133
|
+
expect(Puppet::SSL::StateMachine).to receive(:new).with(waitforcert: 0).and_return(machine)
|
142
134
|
|
143
135
|
expect { execute_agent }.to exit_with 0
|
144
136
|
end
|
145
137
|
|
146
138
|
it "should use supplied waitforcert when --onetime is specified" do
|
147
|
-
allow(@
|
139
|
+
allow(@agent).to receive(:run).and_return(2)
|
148
140
|
Puppet[:onetime] = true
|
149
141
|
@puppetd.handle_waitforcert(60)
|
150
142
|
|
151
|
-
expect(Puppet::SSL::StateMachine).to receive(:new).with(
|
143
|
+
expect(Puppet::SSL::StateMachine).to receive(:new).with(waitforcert: 60).and_return(machine)
|
152
144
|
|
153
145
|
expect { execute_agent }.to exit_with 0
|
154
146
|
end
|
155
147
|
|
156
148
|
it "should use a default value for waitforcert when --onetime and --waitforcert are not specified" do
|
157
|
-
|
158
|
-
|
159
|
-
expect(Puppet::SSL::StateMachine).to receive(:new).with(hash_including(waitforcert: 120)).and_return(machine)
|
149
|
+
expect(Puppet::SSL::StateMachine).to receive(:new).with(waitforcert: 120).and_return(machine)
|
160
150
|
|
161
151
|
execute_agent
|
162
152
|
end
|
163
153
|
|
164
154
|
it "should register ssl OIDs" do
|
165
|
-
expect(Puppet::SSL::StateMachine).to receive(:new).with(
|
155
|
+
expect(Puppet::SSL::StateMachine).to receive(:new).with(waitforcert: 120).and_return(double(ensure_client_certificate: nil))
|
166
156
|
expect(Puppet::SSL::Oids).to receive(:register_puppet_oids)
|
167
157
|
|
168
158
|
execute_agent
|
@@ -171,7 +161,7 @@ describe Puppet::Application::Agent do
|
|
171
161
|
it "should use the waitforcert setting when checking for a signed certificate" do
|
172
162
|
Puppet[:waitforcert] = 10
|
173
163
|
|
174
|
-
expect(Puppet::SSL::StateMachine).to receive(:new).with(
|
164
|
+
expect(Puppet::SSL::StateMachine).to receive(:new).with(waitforcert: 10).and_return(machine)
|
175
165
|
|
176
166
|
execute_agent
|
177
167
|
end
|
@@ -212,6 +202,7 @@ describe Puppet::Application::Agent do
|
|
212
202
|
allow(Puppet::Resource::Catalog.indirection).to receive(:terminus_class=)
|
213
203
|
allow(Puppet::Resource::Catalog.indirection).to receive(:cache_class=)
|
214
204
|
allow(Puppet::Node::Facts.indirection).to receive(:terminus_class=)
|
205
|
+
allow(Puppet).to receive(:settraps)
|
215
206
|
end
|
216
207
|
|
217
208
|
it "should not run with extra arguments" do
|
@@ -423,9 +414,9 @@ describe Puppet::Application::Agent do
|
|
423
414
|
end
|
424
415
|
|
425
416
|
it "should wait for a certificate" do
|
426
|
-
|
417
|
+
@puppetd.options[:waitforcert] = 123
|
427
418
|
|
428
|
-
expect(Puppet::SSL::StateMachine).to receive(:new).with(
|
419
|
+
expect(Puppet::SSL::StateMachine).to receive(:new).with(waitforcert: 123).and_return(machine)
|
429
420
|
|
430
421
|
execute_agent
|
431
422
|
end
|
@@ -556,16 +547,11 @@ describe Puppet::Application::Agent do
|
|
556
547
|
@puppetd.options[:digest] = :MD5
|
557
548
|
end
|
558
549
|
|
559
|
-
def expected_fingerprint(name, x509)
|
560
|
-
digest = OpenSSL::Digest.new(name).hexdigest(x509.to_der)
|
561
|
-
digest.scan(/../).join(':').upcase
|
562
|
-
end
|
563
|
-
|
564
550
|
it "should fingerprint the certificate if it exists" do
|
565
551
|
cert = cert_fixture('signed.pem')
|
566
552
|
allow_any_instance_of(Puppet::X509::CertProvider).to receive(:load_client_cert).and_return(cert)
|
567
553
|
|
568
|
-
expect(@puppetd).to receive(:puts).with(
|
554
|
+
expect(@puppetd).to receive(:puts).with('(MD5) E2:BA:9A:EF:20:A8:7D:10:8D:82:9A:61:5D:FD:5B:33')
|
569
555
|
|
570
556
|
@puppetd.fingerprint
|
571
557
|
end
|
@@ -575,7 +561,7 @@ describe Puppet::Application::Agent do
|
|
575
561
|
allow_any_instance_of(Puppet::X509::CertProvider).to receive(:load_client_cert).and_return(nil)
|
576
562
|
allow_any_instance_of(Puppet::X509::CertProvider).to receive(:load_request).and_return(request)
|
577
563
|
|
578
|
-
expect(@puppetd).to receive(:puts).with(
|
564
|
+
expect(@puppetd).to receive(:puts).with('(MD5) B8:4C:FB:31:AE:17:86:E3:AD:53:97:CA:F6:3C:4A:CB')
|
579
565
|
|
580
566
|
@puppetd.fingerprint
|
581
567
|
end
|
@@ -10,22 +10,21 @@ describe Puppet::Application::Apply do
|
|
10
10
|
|
11
11
|
before :each do
|
12
12
|
@apply = Puppet::Application[:apply]
|
13
|
+
allow(Puppet::Util::Log).to receive(:newdestination)
|
13
14
|
Puppet[:reports] = "none"
|
14
15
|
end
|
15
16
|
|
16
|
-
[:debug,:loadclasses,:test,:verbose,:use_nodes,:detailed_exitcodes,:catalog].each do |option|
|
17
|
+
[:debug,:loadclasses,:test,:verbose,:use_nodes,:detailed_exitcodes,:catalog, :write_catalog_summary].each do |option|
|
18
|
+
it "should declare handle_#{option} method" do
|
19
|
+
expect(@apply).to respond_to("handle_#{option}".to_sym)
|
20
|
+
end
|
21
|
+
|
17
22
|
it "should store argument value when calling handle_#{option}" do
|
18
23
|
expect(@apply.options).to receive(:[]=).with(option, 'arg')
|
19
24
|
@apply.send("handle_#{option}".to_sym, 'arg')
|
20
25
|
end
|
21
26
|
end
|
22
27
|
|
23
|
-
it "should handle write_catalog_summary" do
|
24
|
-
@apply.send(:handle_write_catalog_summary, true)
|
25
|
-
|
26
|
-
expect(Puppet[:write_catalog_summary]).to eq(true)
|
27
|
-
end
|
28
|
-
|
29
28
|
it "should set the code to the provided code when :execute is used" do
|
30
29
|
expect(@apply.options).to receive(:[]=).with(:code, 'arg')
|
31
30
|
@apply.send("handle_execute".to_sym, 'arg')
|
@@ -54,18 +53,23 @@ describe Puppet::Application::Apply do
|
|
54
53
|
end
|
55
54
|
|
56
55
|
describe "with --test" do
|
56
|
+
it "should call setup_test" do
|
57
|
+
@apply.options[:test] = true
|
58
|
+
expect(@apply).to receive(:setup_test)
|
59
|
+
|
60
|
+
@apply.setup
|
61
|
+
end
|
62
|
+
|
57
63
|
it "should set options[:verbose] to true" do
|
58
64
|
@apply.setup_test
|
59
65
|
|
60
66
|
expect(@apply.options[:verbose]).to eq(true)
|
61
67
|
end
|
62
|
-
|
63
68
|
it "should set options[:show_diff] to true" do
|
64
69
|
Puppet.settings.override_default(:show_diff, false)
|
65
70
|
@apply.setup_test
|
66
71
|
expect(Puppet[:show_diff]).to eq(true)
|
67
72
|
end
|
68
|
-
|
69
73
|
it "should set options[:detailed_exitcodes] to true" do
|
70
74
|
@apply.setup_test
|
71
75
|
|
@@ -151,7 +155,7 @@ describe Puppet::Application::Apply do
|
|
151
155
|
end
|
152
156
|
|
153
157
|
describe "when executing" do
|
154
|
-
it "should dispatch to 'apply' if it was called with
|
158
|
+
it "should dispatch to 'apply' if it was called with 'apply'" do
|
155
159
|
@apply.options[:catalog] = "foo"
|
156
160
|
|
157
161
|
expect(@apply).to receive(:apply)
|
@@ -209,52 +213,47 @@ describe Puppet::Application::Apply do
|
|
209
213
|
@apply.options[:code] = "code to run"
|
210
214
|
expect(Puppet).to receive(:[]=).with(:code,"code to run")
|
211
215
|
|
212
|
-
expect { @apply.
|
216
|
+
expect { @apply.main }.to exit_with 0
|
213
217
|
end
|
214
218
|
|
215
219
|
it "should set the code to run from STDIN if no arguments" do
|
216
|
-
@apply.command_line.args
|
220
|
+
allow(@apply.command_line).to receive(:args).and_return([])
|
217
221
|
allow(STDIN).to receive(:read).and_return("code to run")
|
218
222
|
|
219
223
|
expect(Puppet).to receive(:[]=).with(:code,"code to run")
|
220
224
|
|
221
|
-
expect { @apply.
|
225
|
+
expect { @apply.main }.to exit_with 0
|
222
226
|
end
|
223
227
|
|
224
228
|
it "should raise an error if a file is passed on command line and the file does not exist" do
|
225
229
|
noexist = tmpfile('noexist.pp')
|
226
|
-
@apply.command_line.args
|
227
|
-
expect {
|
228
|
-
@apply.run
|
229
|
-
}.to exit_with(1)
|
230
|
-
.and output(anything).to_stdout
|
231
|
-
.and output(/Could not find file #{noexist}/).to_stderr
|
230
|
+
allow(@apply.command_line).to receive(:args).and_return([noexist])
|
231
|
+
expect { @apply.main }.to raise_error(RuntimeError, "Could not find file #{noexist}")
|
232
232
|
end
|
233
233
|
|
234
234
|
it "should set the manifest to the first file and warn other files will be skipped" do
|
235
235
|
manifest = tmpfile('starwarsIV')
|
236
236
|
FileUtils.touch(manifest)
|
237
237
|
|
238
|
-
@apply.command_line.args
|
239
|
-
|
240
|
-
|
241
|
-
|
242
|
-
|
243
|
-
|
238
|
+
allow(@apply.command_line).to receive(:args).and_return([manifest, 'starwarsI', 'starwarsII'])
|
239
|
+
|
240
|
+
expect { @apply.main }.to exit_with 0
|
241
|
+
|
242
|
+
msg = @logs.find {|m| m.message =~ /Only one file can be applied per run/ }
|
243
|
+
expect(msg.message).to eq('Only one file can be applied per run. Skipping starwarsI, starwarsII')
|
244
|
+
expect(msg.level).to eq(:warning)
|
244
245
|
end
|
245
246
|
|
246
247
|
it "should splay" do
|
247
248
|
expect(@apply).to receive(:splay)
|
248
249
|
|
249
|
-
expect {
|
250
|
-
@apply.run
|
251
|
-
}.to exit_with(0).and output(anything).to_stdout
|
250
|
+
expect { @apply.main }.to exit_with 0
|
252
251
|
end
|
253
252
|
|
254
|
-
it "should
|
253
|
+
it "should raise an error if we can't find the node" do
|
255
254
|
expect(Puppet::Node.indirection).to receive(:find).and_return(nil)
|
256
255
|
|
257
|
-
expect { @apply.
|
256
|
+
expect { @apply.main }.to raise_error(RuntimeError, /Could not find node/)
|
258
257
|
end
|
259
258
|
|
260
259
|
it "should load custom classes if loadclasses" do
|
@@ -265,18 +264,18 @@ describe Puppet::Application::Apply do
|
|
265
264
|
|
266
265
|
expect(@node).to receive(:classes=).with(['class'])
|
267
266
|
|
268
|
-
expect { @apply.
|
267
|
+
expect { @apply.main }.to exit_with 0
|
269
268
|
end
|
270
269
|
|
271
270
|
it "should compile the catalog" do
|
272
271
|
expect(Puppet::Resource::Catalog.indirection).to receive(:find).and_return(@catalog)
|
273
272
|
|
274
|
-
expect { @apply.
|
273
|
+
expect { @apply.main }.to exit_with 0
|
275
274
|
end
|
276
275
|
|
277
276
|
it 'should called the DeferredResolver to resolve any Deferred values' do
|
278
277
|
expect(Puppet::Pops::Evaluator::DeferredResolver).to receive(:resolve_and_replace).with(any_args)
|
279
|
-
expect { @apply.
|
278
|
+
expect { @apply.main }.to exit_with 0
|
280
279
|
end
|
281
280
|
|
282
281
|
it 'should make the Puppet::Pops::Loaders available when applying the compiled catalog' do
|
@@ -286,67 +285,47 @@ describe Puppet::Application::Apply do
|
|
286
285
|
fail('Loaders not found') unless Puppet.lookup(:loaders) { nil }.is_a?(Puppet::Pops::Loaders)
|
287
286
|
true
|
288
287
|
end.and_return(0)
|
289
|
-
expect { @apply.
|
288
|
+
expect { @apply.main }.to exit_with 0
|
290
289
|
end
|
291
290
|
|
292
291
|
it "should transform the catalog to ral" do
|
293
292
|
expect(@catalog).to receive(:to_ral).and_return(@catalog)
|
294
293
|
|
295
|
-
expect { @apply.
|
294
|
+
expect { @apply.main }.to exit_with 0
|
296
295
|
end
|
297
296
|
|
298
297
|
it "should finalize the catalog" do
|
299
298
|
expect(@catalog).to receive(:finalize)
|
300
299
|
|
301
|
-
expect { @apply.
|
300
|
+
expect { @apply.main }.to exit_with 0
|
302
301
|
end
|
303
302
|
|
304
303
|
it "should not save the classes or resource file by default" do
|
305
304
|
expect(@catalog).not_to receive(:write_class_file)
|
306
305
|
expect(@catalog).not_to receive(:write_resource_file)
|
307
|
-
|
308
|
-
expect { @apply.run }.to exit_with(0).and output(anything).to_stdout
|
306
|
+
expect { @apply.main }.to exit_with 0
|
309
307
|
end
|
310
308
|
|
311
|
-
it "should save the classes and resources files when requested
|
312
|
-
|
313
|
-
expect(@catalog).to receive(:write_resource_file).once
|
314
|
-
|
315
|
-
# dashes are parsed by the application's OptionParser
|
316
|
-
@apply.command_line.args = ['--write-catalog-summary']
|
317
|
-
expect { @apply.run }.to exit_with(0).and output(anything).to_stdout
|
318
|
-
end
|
319
|
-
|
320
|
-
it "should save the classes and resources files when requested on the command line using underscores" do
|
321
|
-
expect(@catalog).to receive(:write_class_file).once
|
322
|
-
expect(@catalog).to receive(:write_resource_file).once
|
323
|
-
|
324
|
-
# underscores are parsed by the settings PuppetOptionParser
|
325
|
-
@apply.command_line.args = ['--write_catalog_summary']
|
326
|
-
Puppet.initialize_settings(['--write_catalog_summary'])
|
327
|
-
expect { @apply.run }.to exit_with(0).and output(anything).to_stdout
|
328
|
-
end
|
329
|
-
|
330
|
-
it "should save the classes and resources files when specified as a setting" do
|
331
|
-
Puppet[:write_catalog_summary] = true
|
309
|
+
it "should save the classes and resources files when requested" do
|
310
|
+
@apply.options[:write_catalog_summary] = true
|
332
311
|
|
333
312
|
expect(@catalog).to receive(:write_class_file).once
|
334
313
|
expect(@catalog).to receive(:write_resource_file).once
|
335
314
|
|
336
|
-
expect { @apply.
|
315
|
+
expect { @apply.main }.to exit_with 0
|
337
316
|
end
|
338
317
|
|
339
318
|
it "should call the prerun and postrun commands on a Configurer instance" do
|
340
319
|
expect_any_instance_of(Puppet::Configurer).to receive(:execute_prerun_command).and_return(true)
|
341
320
|
expect_any_instance_of(Puppet::Configurer).to receive(:execute_postrun_command).and_return(true)
|
342
321
|
|
343
|
-
expect { @apply.
|
322
|
+
expect { @apply.main }.to exit_with 0
|
344
323
|
end
|
345
324
|
|
346
325
|
it "should apply the catalog" do
|
347
326
|
expect(@catalog).to receive(:apply).and_return(double('transaction'))
|
348
327
|
|
349
|
-
expect { @apply.
|
328
|
+
expect { @apply.main }.to exit_with 0
|
350
329
|
end
|
351
330
|
|
352
331
|
it "should save the last run summary" do
|
@@ -355,7 +334,7 @@ describe Puppet::Application::Apply do
|
|
355
334
|
allow(Puppet::Transaction::Report).to receive(:new).and_return(report)
|
356
335
|
|
357
336
|
expect_any_instance_of(Puppet::Configurer).to receive(:save_last_run_summary).with(report)
|
358
|
-
expect { @apply.
|
337
|
+
expect { @apply.main }.to exit_with 0
|
359
338
|
end
|
360
339
|
|
361
340
|
describe "when using node_name_fact" do
|
@@ -368,27 +347,27 @@ describe Puppet::Application::Apply do
|
|
368
347
|
end
|
369
348
|
|
370
349
|
it "should set the facts name based on the node_name_fact" do
|
371
|
-
expect { @apply.
|
350
|
+
expect { @apply.main }.to exit_with 0
|
372
351
|
expect(@facts.name).to eq('other_node_name')
|
373
352
|
end
|
374
353
|
|
375
354
|
it "should set the node_name_value based on the node_name_fact" do
|
376
|
-
expect { @apply.
|
355
|
+
expect { @apply.main }.to exit_with 0
|
377
356
|
expect(Puppet[:node_name_value]).to eq('other_node_name')
|
378
357
|
end
|
379
358
|
|
380
359
|
it "should merge in our node the loaded facts" do
|
381
360
|
@facts.values.merge!('key' => 'value')
|
382
361
|
|
383
|
-
expect { @apply.
|
362
|
+
expect { @apply.main }.to exit_with 0
|
384
363
|
|
385
364
|
expect(@node.parameters['key']).to eq('value')
|
386
365
|
end
|
387
366
|
|
388
|
-
it "should
|
367
|
+
it "should raise an error if we can't find the facts" do
|
389
368
|
expect(Puppet::Node::Facts.indirection).to receive(:find).and_return(nil)
|
390
369
|
|
391
|
-
expect { @apply.
|
370
|
+
expect { @apply.main }.to raise_error(RuntimeError, /Could not find facts/)
|
392
371
|
end
|
393
372
|
end
|
394
373
|
|
@@ -401,14 +380,14 @@ describe Puppet::Application::Apply do
|
|
401
380
|
Puppet[:noop] = false
|
402
381
|
allow_any_instance_of(Puppet::Transaction::Report).to receive(:exit_status).and_return(666)
|
403
382
|
|
404
|
-
expect { @apply.
|
383
|
+
expect { @apply.main }.to exit_with 666
|
405
384
|
end
|
406
385
|
|
407
386
|
it "should exit with report's computed exit status, even if --noop is set" do
|
408
387
|
Puppet[:noop] = true
|
409
388
|
allow_any_instance_of(Puppet::Transaction::Report).to receive(:exit_status).and_return(666)
|
410
389
|
|
411
|
-
expect { @apply.
|
390
|
+
expect { @apply.main }.to exit_with 666
|
412
391
|
end
|
413
392
|
|
414
393
|
it "should always exit with 0 if option is disabled" do
|
@@ -416,7 +395,7 @@ describe Puppet::Application::Apply do
|
|
416
395
|
report = double('report', :exit_status => 666)
|
417
396
|
allow(@transaction).to receive(:report).and_return(report)
|
418
397
|
|
419
|
-
expect { @apply.
|
398
|
+
expect { @apply.main }.to exit_with 0
|
420
399
|
end
|
421
400
|
|
422
401
|
it "should always exit with 0 if --noop" do
|
@@ -424,7 +403,7 @@ describe Puppet::Application::Apply do
|
|
424
403
|
report = double('report', :exit_status => 666)
|
425
404
|
allow(@transaction).to receive(:report).and_return(report)
|
426
405
|
|
427
|
-
expect { @apply.
|
406
|
+
expect { @apply.main }.to exit_with 0
|
428
407
|
end
|
429
408
|
end
|
430
409
|
end
|
@@ -524,15 +503,16 @@ describe Puppet::Application::Apply do
|
|
524
503
|
}
|
525
504
|
CODE
|
526
505
|
|
527
|
-
|
506
|
+
@apply.options[:write_catalog_summary] = true
|
507
|
+
|
528
508
|
Puppet.settings[:resourcefile] = resourcefile
|
529
509
|
Puppet.settings[:classfile] = classfile
|
530
510
|
|
531
511
|
#We don't actually need the resource to do anything, we are using it's properties in other parts of the workflow.
|
532
|
-
|
533
|
-
|
512
|
+
allow(Puppet::Util::Execution).to receive(:execute)
|
513
|
+
|
514
|
+
expect { @apply.main }.to exit_with 0
|
534
515
|
|
535
|
-
expect { @apply.run }.to exit_with(0).and output(%r{Exec\[do it\]/returns: executed successfully}).to_stdout
|
536
516
|
result = File.read(resourcefile)
|
537
517
|
|
538
518
|
expect(result).not_to match(/secret_file_name/)
|