puppet 6.25.0-x64-mingw32 → 7.0.0-x64-mingw32
Sign up to get free protection for your applications and to get access to all the features.
Potentially problematic release.
This version of puppet might be problematic. Click here for more details.
- checksums.yaml +4 -4
- data/CODEOWNERS +16 -2
- data/CONTRIBUTING.md +5 -5
- data/Gemfile +3 -5
- data/Gemfile.lock +39 -51
- 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/application/agent.rb +4 -16
- 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/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 +0 -1
- data/lib/puppet/configurer/downloader.rb +1 -2
- data/lib/puppet/configurer/plugin_handler.rb +21 -19
- data/lib/puppet/configurer.rb +87 -130
- data/lib/puppet/confine/variable.rb +1 -1
- data/lib/puppet/defaults.rb +128 -226
- data/lib/puppet/environments.rb +82 -146
- data/lib/puppet/face/facts.rb +5 -103
- 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/mount/file.rb +4 -4
- data/lib/puppet/file_serving/mount.rb +1 -2
- data/lib/puppet/file_system/file_impl.rb +1 -3
- data/lib/puppet/file_system/memory_file.rb +1 -8
- data/lib/puppet/file_system/windows.rb +2 -4
- 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/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 +9 -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/generate/models/type/type.rb +4 -1
- 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 -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 -12
- 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 +1 -30
- 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 +0 -69
- data/lib/puppet/parser/scope.rb +0 -1
- data/lib/puppet/parser/templatewrapper.rb +1 -2
- 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 -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/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/egrammar.ra +0 -56
- data/lib/puppet/pops/parser/eparser.rb +1691 -1883
- 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_data_converter.rb +6 -18
- 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 +1 -1
- 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 +5 -5
- 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 -34
- 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 +1 -14
- data/lib/puppet/resource/type.rb +3 -119
- data/lib/puppet/resource/type_collection.rb +3 -49
- data/lib/puppet/resource.rb +1 -89
- 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 +17 -0
- data/lib/puppet/ssl/state_machine.rb +3 -1
- data/lib/puppet/ssl/verifier.rb +2 -0
- 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 -11
- data/lib/puppet/transaction/report.rb +3 -19
- data/lib/puppet/transaction.rb +1 -7
- data/lib/puppet/type/exec.rb +5 -35
- data/lib/puppet/type/file/checksum.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 +21 -38
- 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 -3
- data/lib/puppet/util/log.rb +2 -1
- data/lib/puppet/util/logging.rb +25 -1
- data/lib/puppet/util/monkey_patches.rb +0 -53
- 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 +9 -460
- 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 -8
- data/lib/puppet/util/yaml.rb +0 -22
- data/lib/puppet/util.rb +3 -4
- 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 +20 -25
- data/locales/puppet.pot +816 -1637
- data/man/man5/puppet.conf.5 +286 -382
- 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 +1 -1
- 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/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 +51 -271
- 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/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 +0 -12
- 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 -37
- 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/modules.rb +2 -13
- data/spec/lib/puppet_spec/puppetserver.rb +1 -16
- 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 +6 -10
- data/spec/unit/application/agent_spec.rb +3 -7
- 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/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 +67 -202
- 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/defaults_spec.rb +68 -55
- data/spec/unit/environments_spec.rb +68 -408
- 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 +0 -22
- data/spec/unit/forge/module_release_spec.rb +7 -2
- 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/functions4_spec.rb +2 -2
- data/spec/unit/gettext/config_spec.rb +0 -12
- 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 -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 -54
- 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 +11 -0
- 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 -59
- 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 -46
- 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 +1 -1
- data/spec/unit/provider/parsedfile_spec.rb +0 -10
- data/spec/unit/provider/service/init_spec.rb +0 -1
- data/spec/unit/provider/service/launchd_spec.rb +0 -11
- data/spec/unit/provider/service/openwrt_spec.rb +1 -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 +1 -1
- 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 +10 -67
- 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 +2 -5
- data/spec/unit/ssl/state_machine_spec.rb +5 -20
- 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/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/user_spec.rb +0 -45
- 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 +0 -54
- data/spec/unit/util_spec.rb +6 -31
- data/tasks/generate_cert_fixtures.rake +3 -12
- data/tasks/parallel.rake +3 -3
- metadata +137 -288
- 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 -91
- 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 -64
- 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 -27
- 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/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/ssl_spec.rb +0 -91
@@ -5,27 +5,9 @@ require_relative 'parser_rspec_helper'
|
|
5
5
|
describe "egrammar parsing of 'application'" do
|
6
6
|
include ParserRspecHelper
|
7
7
|
|
8
|
-
it "
|
9
|
-
expect
|
10
|
-
|
11
|
-
|
12
|
-
it "an empty body" do
|
13
|
-
prog = <<-EPROG
|
14
|
-
application foo {
|
15
|
-
db { one:
|
16
|
-
password => 'secret'
|
17
|
-
}
|
18
|
-
}
|
19
|
-
EPROG
|
20
|
-
expect(dump(parse(prog))).to eq( [
|
21
|
-
"(application foo () (block",
|
22
|
-
" (resource db",
|
23
|
-
" (one",
|
24
|
-
" (password => 'secret')))", "))" ].join("\n"))
|
25
|
-
end
|
26
|
-
|
27
|
-
it "accepts parameters" do
|
28
|
-
s = "application foo($p1 = 'yo', $p2) { }"
|
29
|
-
expect(dump(parse(s))).to eq("(application foo ((= p1 'yo') p2) ())")
|
8
|
+
it "raises a syntax error" do
|
9
|
+
expect {
|
10
|
+
parse("application foo { }")
|
11
|
+
}.to raise_error(Puppet::ParseErrorWithIssue, /Syntax error at 'application' \(line: 1, column: 1\)/)
|
30
12
|
end
|
31
13
|
end
|
@@ -191,7 +191,6 @@ describe "egrammar parsing basic expressions" do
|
|
191
191
|
|
192
192
|
{
|
193
193
|
'keyword' => %w(type function),
|
194
|
-
'reserved word' => %w(application site produces consumes)
|
195
194
|
}.each_pair do |word_type, words|
|
196
195
|
words.each do |word|
|
197
196
|
it "allows the #{word_type} '#{word}' in a list" do
|
@@ -6,31 +6,18 @@ describe "egrammar parsing of capability mappings" do
|
|
6
6
|
include ParserRspecHelper
|
7
7
|
|
8
8
|
context "when parsing 'produces'" do
|
9
|
-
it "
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
end
|
14
|
-
|
15
|
-
it "optional end comma is allowed" do
|
16
|
-
prog = "Foo produces Sql { name => value, }"
|
17
|
-
ast = "(produces Foo Sql ((name => value)))"
|
18
|
-
expect(dump(parse(prog))).to eq(ast)
|
9
|
+
it "raises syntax error" do
|
10
|
+
expect {
|
11
|
+
parse("Foo produces Sql { name => value }")
|
12
|
+
}.to raise_error(Puppet::ParseErrorWithIssue, /Syntax error at 'produces' \(line: 1, column: 5\)/)
|
19
13
|
end
|
20
14
|
end
|
21
15
|
|
22
16
|
context "when parsing 'consumes'" do
|
23
|
-
it "
|
24
|
-
|
25
|
-
|
26
|
-
|
17
|
+
it "raises syntax error" do
|
18
|
+
expect {
|
19
|
+
parse("Foo consumes Sql { name => value }")
|
20
|
+
}.to raise_error(Puppet::ParseErrorWithIssue, /Syntax error at 'consumes' \(line: 1, column: 5\)/)
|
27
21
|
end
|
28
|
-
|
29
|
-
it "optional end comma is allowed" do
|
30
|
-
prog = "Foo consumes Sql { name => value, }"
|
31
|
-
ast = "(consumes Foo Sql ((name => value)))"
|
32
|
-
expect(dump(parse(prog))).to eq(ast)
|
33
|
-
end
|
34
|
-
|
35
22
|
end
|
36
23
|
end
|
@@ -95,7 +95,18 @@ describe "egrammar parsing containers" do
|
|
95
95
|
expect(dump(parse("class foo::default {}"))).to eq("(class foo::default ())")
|
96
96
|
end
|
97
97
|
|
98
|
+
it "class class inherits default {} # inherits default", :broken => true do
|
99
|
+
expect {
|
100
|
+
parse("class class inherits default {}")
|
101
|
+
}.to raise_error(/not a valid classname/)
|
102
|
+
end
|
103
|
+
|
98
104
|
it "class class inherits default {} # inherits default" do
|
105
|
+
# TODO: See previous test marked as :broken=>true, it is actually this test (result) that is wacky,
|
106
|
+
# this because a class is named at parse time (since class evaluation is lazy, the model must have the
|
107
|
+
# full class name for nested classes - only, it gets this wrong when a class is named "class" - or at least
|
108
|
+
# I think it is wrong.)
|
109
|
+
#
|
99
110
|
expect { parse("class class inherits default {}") }.to raise_error(/'class' keyword not allowed at this location/)
|
100
111
|
end
|
101
112
|
|
@@ -6,41 +6,37 @@ describe "egrammar parsing of site expression" do
|
|
6
6
|
include ParserRspecHelper
|
7
7
|
|
8
8
|
context "when parsing 'site'" do
|
9
|
-
it "
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
end
|
14
|
-
|
15
|
-
it "a body with one expression is allowed" do
|
16
|
-
prog = "site { $x = 1 }"
|
17
|
-
ast = "(site (block\n (= $x 1)\n))"
|
18
|
-
expect(dump(parse(prog))).to eq(ast)
|
19
|
-
end
|
20
|
-
|
21
|
-
it "a body with more than one expression is allowed" do
|
22
|
-
prog = "site { $x = 1 $y = 2}"
|
23
|
-
ast = "(site (block\n (= $x 1)\n (= $y 2)\n))"
|
24
|
-
expect(dump(parse(prog))).to eq(ast)
|
9
|
+
it "raises a syntax error" do
|
10
|
+
expect {
|
11
|
+
parse("site { }")
|
12
|
+
}.to raise_error(Puppet::ParseErrorWithIssue, /Syntax error at 'site' \(line: 1, column: 1\)/)
|
25
13
|
end
|
26
14
|
end
|
27
15
|
|
28
16
|
context 'When parsing collections containing application management specific keywords' do
|
29
17
|
%w(application site produces consumes).each do |keyword|
|
30
|
-
it "
|
31
|
-
expect
|
18
|
+
it "disallows the keyword '#{keyword}' in a list" do
|
19
|
+
expect {
|
20
|
+
parse("$a = [#{keyword}]")
|
21
|
+
}.to raise_error(Puppet::ParseErrorWithIssue, /Syntax error at '#{keyword}' \(line: 1, column: 7\)/)
|
32
22
|
end
|
33
23
|
|
34
|
-
it "
|
35
|
-
expect
|
24
|
+
it "disallows the keyword '#{keyword}' as a key in a hash" do
|
25
|
+
expect {
|
26
|
+
parse("$a = {#{keyword}=>'x'}")
|
27
|
+
}.to raise_error(Puppet::ParseErrorWithIssue, /Syntax error at '#{keyword}' \(line: 1, column: 7\)/)
|
36
28
|
end
|
37
29
|
|
38
|
-
it "
|
39
|
-
expect
|
30
|
+
it "disallows the keyword '#{keyword}' as a value in a hash" do
|
31
|
+
expect {
|
32
|
+
parse("$a = {'x'=>#{keyword}}")
|
33
|
+
}.to raise_error(Puppet::ParseErrorWithIssue, /Syntax error at '#{keyword}' \(line: 1, column: 12\)/)
|
40
34
|
end
|
41
35
|
|
42
|
-
it "
|
43
|
-
expect
|
36
|
+
it "disallows the keyword '#{keyword}' as an attribute name" do
|
37
|
+
expect {
|
38
|
+
parse("foo { 'x': #{keyword} => 'value' } ")
|
39
|
+
}.to raise_error(Puppet::ParseErrorWithIssue, /Syntax error at '#{keyword}' \(line: 1, column: 12\)/)
|
44
40
|
end
|
45
41
|
end
|
46
42
|
end
|
@@ -32,77 +32,6 @@ describe "Puppet::Pops::Resource" do
|
|
32
32
|
expect(rt.valid_parameter?(:loglevel)).to be_truthy
|
33
33
|
end
|
34
34
|
end
|
35
|
-
|
36
|
-
|
37
|
-
context 'when used with capability resource with producers/consumers' do
|
38
|
-
include PuppetSpec::Files
|
39
|
-
|
40
|
-
let!(:env_name) { 'spec' }
|
41
|
-
let!(:env_dir) { tmpdir('environments') }
|
42
|
-
let!(:populated_env_dir) do
|
43
|
-
dir_contained_in(env_dir, env_name => {
|
44
|
-
'.resource_types' => {
|
45
|
-
'capability.pp' => <<-PUPPET
|
46
|
-
Puppet::Resource::ResourceType3.new(
|
47
|
-
'capability',
|
48
|
-
[],
|
49
|
-
[Puppet::Resource::Param(Any, 'name', true)],
|
50
|
-
{ /(.*)/ => ['name'] },
|
51
|
-
true,
|
52
|
-
true)
|
53
|
-
PUPPET
|
54
|
-
},
|
55
|
-
'modules' => {
|
56
|
-
'test' => {
|
57
|
-
'lib' => {
|
58
|
-
'puppet' => {
|
59
|
-
'type' => { 'capability.rb' => <<-RUBY
|
60
|
-
Puppet::Type.newtype(:capability, :is_capability => true) do
|
61
|
-
newparam :name, :namevar => true
|
62
|
-
raise Puppet::Error, 'Ruby resource was loaded'
|
63
|
-
end
|
64
|
-
RUBY
|
65
|
-
}
|
66
|
-
}
|
67
|
-
}
|
68
|
-
}
|
69
|
-
}
|
70
|
-
})
|
71
|
-
end
|
72
|
-
|
73
|
-
let!(:code) { <<-PUPPET }
|
74
|
-
define producer() {
|
75
|
-
notify { "producer":}
|
76
|
-
}
|
77
|
-
|
78
|
-
define consumer() {
|
79
|
-
notify { $title:}
|
80
|
-
}
|
81
|
-
|
82
|
-
Producer produces Capability {}
|
83
|
-
|
84
|
-
Consumer consumes Capability {}
|
85
|
-
|
86
|
-
producer {x: export => Capability[cap]}
|
87
|
-
consumer {x: consume => Capability[cap]}
|
88
|
-
consumer {y: require => Capability[cap]}
|
89
|
-
PUPPET
|
90
|
-
|
91
|
-
let(:environments) { Puppet::Environments::Directories.new(populated_env_dir, []) }
|
92
|
-
let(:env) { Puppet::Node::Environment.create(:'spec', [File.join(env_dir, 'spec', 'modules')]) }
|
93
|
-
let(:node) { Puppet::Node.new('test', :environment => env) }
|
94
|
-
around(:each) do |example|
|
95
|
-
Puppet[:environment] = env_name
|
96
|
-
Puppet.override(:environments => environments, :current_environment => env) do
|
97
|
-
example.run
|
98
|
-
end
|
99
|
-
Puppet::Type.rmtype(:capability)
|
100
|
-
end
|
101
|
-
|
102
|
-
it 'does not load the Ruby resource' do
|
103
|
-
expect { compile_to_catalog(code, node) }.not_to raise_error
|
104
|
-
end
|
105
|
-
end
|
106
35
|
end
|
107
36
|
end
|
108
37
|
end
|
@@ -559,29 +559,6 @@ module Serialization
|
|
559
559
|
expect(warnings).to eql(["['key'] contains the special value default. It will be converted to the String 'default'"])
|
560
560
|
end
|
561
561
|
end
|
562
|
-
context 'and force_symbol set to true' do
|
563
|
-
let(:to_converter) { ToDataConverter.new(:rich_data => false, :force_symbol => true) }
|
564
|
-
|
565
|
-
it 'A Hash with Symbol values is converted to hash with Symbol values' do
|
566
|
-
val = { 'one' => :one, 'two' => :two }
|
567
|
-
Puppet::Util::Log.with_destination(Puppet::Test::LogCollector.new(logs)) do
|
568
|
-
|
569
|
-
# write and read methods does not work here as we cannot force Symbols in Json.
|
570
|
-
# and a hash with symbol values cannot be an instance of Types::TypeFactory.data.
|
571
|
-
# Using YAML for this instead
|
572
|
-
io.reopen
|
573
|
-
value = to_converter.convert(val)
|
574
|
-
io << [value].to_yaml
|
575
|
-
io.rewind
|
576
|
-
|
577
|
-
val2 = from_converter.convert(YAML::load(io.read)[0])
|
578
|
-
|
579
|
-
expect(val2).to be_a(Hash)
|
580
|
-
expect(val2).to eql({ 'one' => :one, 'two' => :two })
|
581
|
-
end
|
582
|
-
expect(warnings).to be_empty
|
583
|
-
end
|
584
|
-
end
|
585
562
|
end
|
586
563
|
|
587
564
|
context 'with rich_data is set to true' do
|
@@ -652,42 +629,7 @@ module Serialization
|
|
652
629
|
it 'the value of a type description is something other than a String or a Hash' do
|
653
630
|
expect do
|
654
631
|
from_converter.convert({ '__ptype' => { '__ptype' => 'Pcore::TimestampType', '__pvalue' => 12345 }})
|
655
|
-
end.to raise_error(/Cannot create a Pcore::TimestampType from a
|
656
|
-
end
|
657
|
-
end
|
658
|
-
|
659
|
-
context 'when data is unknown' do
|
660
|
-
let(:to_converter) { ToDataConverter.new(:message_prefix => 'Test Hash') }
|
661
|
-
let(:logs) { [] }
|
662
|
-
let(:warnings) { logs.select { |log| log.level == :warning }.map { |log| log.message } }
|
663
|
-
let(:val) { Class.new }
|
664
|
-
|
665
|
-
context 'and :silence_warnings undefined or set to false' do
|
666
|
-
it 'convert the unknown data to string with warnings' do
|
667
|
-
Puppet::Util::Log.with_destination(Puppet::Test::LogCollector.new(logs)) do
|
668
|
-
write(val)
|
669
|
-
val2 = read
|
670
|
-
expect(val2).to be_a(String)
|
671
|
-
expect(val2).to match(/Class/)
|
672
|
-
end
|
673
|
-
expect(warnings).to eql([
|
674
|
-
"Test Hash contains a #{val.class} value. It will be converted to the String '#{val.to_s}'"])
|
675
|
-
end
|
676
|
-
end
|
677
|
-
|
678
|
-
context 'and :silence_warnings undefined or set to true' do
|
679
|
-
let(:to_converter) { ToDataConverter.new(:message_prefix => 'Test Hash', :silence_warnings => true) }
|
680
|
-
|
681
|
-
it 'convert the unknown data to string without warnings if silence_warnings set to true' do
|
682
|
-
val = Class.new
|
683
|
-
Puppet::Util::Log.with_destination(Puppet::Test::LogCollector.new(logs)) do
|
684
|
-
write(val)
|
685
|
-
val2 = read
|
686
|
-
expect(val2).to be_a(String)
|
687
|
-
expect(val2).to match(/Class/)
|
688
|
-
end
|
689
|
-
expect(warnings).to be_empty
|
690
|
-
end
|
632
|
+
end.to raise_error(/Cannot create a Pcore::TimestampType from a Integer/)
|
691
633
|
end
|
692
634
|
end
|
693
635
|
end
|
@@ -154,9 +154,4 @@ describe 'ToStringifiedConverter' do
|
|
154
154
|
unassigned = [243, 176, 128, 128].pack("C*").force_encoding(Encoding::UTF_8)
|
155
155
|
expect(transform(unassigned)).to eq("")
|
156
156
|
end
|
157
|
-
|
158
|
-
it 'converts ProcessOutput objects to string' do
|
159
|
-
object = Puppet::Util::Execution::ProcessOutput.new('object', 0)
|
160
|
-
expect(transform(object)).to be_instance_of(String)
|
161
|
-
end
|
162
157
|
end
|
@@ -125,24 +125,6 @@ describe 'Semantic Versions' do
|
|
125
125
|
expect(eval_and_collect_notices(code)).to eql(['true', 'false'])
|
126
126
|
end
|
127
127
|
|
128
|
-
it 'can be compared to another instance created from arguments' do
|
129
|
-
code = <<-CODE
|
130
|
-
$x = SemVer('1.2.3-rc4+5')
|
131
|
-
$y = SemVer(1, 2, 3, 'rc4', '5')
|
132
|
-
notice($x == $y)
|
133
|
-
CODE
|
134
|
-
expect(eval_and_collect_notices(code)).to eql(['true'])
|
135
|
-
end
|
136
|
-
|
137
|
-
it 'can be compared to another instance created from a hash' do
|
138
|
-
code = <<-CODE
|
139
|
-
$x = SemVer('1.2.3-rc4+5')
|
140
|
-
$y = SemVer(major => 1, minor => 2, patch => 3, prerelease => 'rc4', build => '5')
|
141
|
-
notice($x == $y)
|
142
|
-
CODE
|
143
|
-
expect(eval_and_collect_notices(code)).to eql(['true'])
|
144
|
-
end
|
145
|
-
|
146
128
|
it 'can be compared to another instance for magnitude' do
|
147
129
|
code = <<-CODE
|
148
130
|
$x = SemVer('1.1.1')
|
@@ -113,24 +113,6 @@ describe 'Sensitive Type' do
|
|
113
113
|
expect(eval_and_collect_notices(code)).to eq(['Sensitive[Integer] != Sensitive[String]'])
|
114
114
|
end
|
115
115
|
|
116
|
-
it 'equals another instance with the same value' do
|
117
|
-
code =<<-CODE
|
118
|
-
$i = Sensitive('secret')
|
119
|
-
$o = Sensitive('secret')
|
120
|
-
notice($i == $o)
|
121
|
-
CODE
|
122
|
-
expect(eval_and_collect_notices(code)).to eq(['true'])
|
123
|
-
end
|
124
|
-
|
125
|
-
it 'has equal hash keys for same values' do
|
126
|
-
code =<<-CODE
|
127
|
-
$i = Sensitive('secret')
|
128
|
-
$o = Sensitive('secret')
|
129
|
-
notice({$i => 1} == {$o => 1})
|
130
|
-
CODE
|
131
|
-
expect(eval_and_collect_notices(code)).to eq(['true'])
|
132
|
-
end
|
133
|
-
|
134
116
|
it 'can be created from another sensitive instance ' do
|
135
117
|
code =<<-CODE
|
136
118
|
$o = Sensitive("hunter2")
|
@@ -141,11 +141,11 @@ describe 'The type calculator' do
|
|
141
141
|
|
142
142
|
context 'when inferring ruby' do
|
143
143
|
|
144
|
-
it '
|
144
|
+
it 'integer translates to PIntegerType' do
|
145
145
|
expect(calculator.infer(1).class).to eq(PIntegerType)
|
146
146
|
end
|
147
147
|
|
148
|
-
it 'large
|
148
|
+
it 'large integer translates to PIntegerType' do
|
149
149
|
expect(calculator.infer(2**33).class).to eq(PIntegerType)
|
150
150
|
end
|
151
151
|
|
@@ -329,7 +329,7 @@ describe 'The type calculator' do
|
|
329
329
|
expect(object_t('name' => 'DerivedObjectArray')).to be_instance(derived_object)
|
330
330
|
end
|
331
331
|
|
332
|
-
it 'with
|
332
|
+
it 'with integer values translates to PArrayType[PIntegerType]' do
|
333
333
|
expect(calculator.infer([1,2]).element_type.class).to eq(PIntegerType)
|
334
334
|
end
|
335
335
|
|
@@ -407,7 +407,7 @@ describe 'The type calculator' do
|
|
407
407
|
expect(et.class).to eq(PEnumType)
|
408
408
|
end
|
409
409
|
|
410
|
-
it 'with array of string values and array of
|
410
|
+
it 'with array of string values and array of integers translates to PArrayType[PArrayType[PScalarDataType]]' do
|
411
411
|
et = calculator.infer([['first', 'array'], [1,2]])
|
412
412
|
expect(et.class).to eq(PArrayType)
|
413
413
|
et = et.element_type
|
@@ -425,7 +425,7 @@ describe 'The type calculator' do
|
|
425
425
|
expect(et.class).to eq(PEnumType)
|
426
426
|
end
|
427
427
|
|
428
|
-
it 'with hash of string values and hash of
|
428
|
+
it 'with hash of string values and hash of integers translates to PArrayType[PHashType[PScalarDataType]]' do
|
429
429
|
et = calculator.infer([{:first => 'first', :second => 'second' }, {:first => 1, :second => 2 }])
|
430
430
|
expect(et.class).to eq(PArrayType)
|
431
431
|
et = et.element_type
|
@@ -489,7 +489,7 @@ describe 'The type calculator' do
|
|
489
489
|
expect(calculator.infer({'first' => 1, 'second' => 2}).key_type.class).to eq(PEnumType)
|
490
490
|
end
|
491
491
|
|
492
|
-
it 'with
|
492
|
+
it 'with integer values translates to PHashType[key, PIntegerType]' do
|
493
493
|
expect(calculator.infer({:first => 1, :second => 2}).value_type.class).to eq(PIntegerType)
|
494
494
|
end
|
495
495
|
|
@@ -1980,12 +1980,6 @@ describe 'The type calculator' do
|
|
1980
1980
|
expect(calculator.instance?(tuple, [1, 'a', 1])).to eq(false)
|
1981
1981
|
end
|
1982
1982
|
|
1983
|
-
it 'should not consider ProcessOutput objects as instanceof PScalarDataType' do
|
1984
|
-
object = Puppet::Util::Execution::ProcessOutput.new('object', 0)
|
1985
|
-
|
1986
|
-
expect(calculator.instance?(PScalarDataType::DEFAULT, object)).to eq(false)
|
1987
|
-
end
|
1988
|
-
|
1989
1983
|
context 'and t is Struct' do
|
1990
1984
|
it 'should consider hash[cont] as instance of Struct[cont-t]' do
|
1991
1985
|
struct = struct_t({'a'=>Integer, 'b'=>String, 'c'=>Float})
|
@@ -151,7 +151,7 @@ describe 'The type factory' do
|
|
151
151
|
expect(hc.class_name).to eq('x')
|
152
152
|
end
|
153
153
|
|
154
|
-
it 'array_of(
|
154
|
+
it 'array_of(integer) returns PArrayType[PIntegerType]' do
|
155
155
|
at = TypeFactory.array_of(1)
|
156
156
|
expect(at.class()).to eq(PArrayType)
|
157
157
|
expect(at.element_type.class).to eq(PIntegerType)
|
@@ -179,17 +179,17 @@ describe "validating 4x" do
|
|
179
179
|
expect(acceptor).to have_issue(Puppet::Pops::Issues::DUPLICATE_KEY)
|
180
180
|
end
|
181
181
|
|
182
|
-
it 'produces
|
182
|
+
it 'produces an error for virtual class resource' do
|
183
183
|
acceptor = validate(parse('@class { test: }'))
|
184
|
-
expect(acceptor.warning_count).to eql(
|
185
|
-
expect(acceptor.error_count).to eql(
|
184
|
+
expect(acceptor.warning_count).to eql(0)
|
185
|
+
expect(acceptor.error_count).to eql(1)
|
186
186
|
expect(acceptor).to have_issue(Puppet::Pops::Issues::CLASS_NOT_VIRTUALIZABLE)
|
187
187
|
end
|
188
188
|
|
189
|
-
it 'produces
|
189
|
+
it 'produces an error for exported class resource' do
|
190
190
|
acceptor = validate(parse('@@class { test: }'))
|
191
|
-
expect(acceptor.warning_count).to eql(
|
192
|
-
expect(acceptor.error_count).to eql(
|
191
|
+
expect(acceptor.warning_count).to eql(0)
|
192
|
+
expect(acceptor.error_count).to eql(1)
|
193
193
|
expect(acceptor).to have_issue(Puppet::Pops::Issues::CLASS_NOT_VIRTUALIZABLE)
|
194
194
|
end
|
195
195
|
|
@@ -310,17 +310,17 @@ describe "validating 4x" do
|
|
310
310
|
expect(acceptor).to have_issue(Puppet::Pops::Issues::DUPLICATE_DEFAULT)
|
311
311
|
end
|
312
312
|
|
313
|
-
it 'produces
|
313
|
+
it 'produces an error for virtual class resource' do
|
314
314
|
acceptor = validate(parse('@class { test: }'))
|
315
|
-
expect(acceptor.warning_count).to eql(
|
316
|
-
expect(acceptor.error_count).to eql(
|
315
|
+
expect(acceptor.warning_count).to eql(0)
|
316
|
+
expect(acceptor.error_count).to eql(1)
|
317
317
|
expect(acceptor).to have_issue(Puppet::Pops::Issues::CLASS_NOT_VIRTUALIZABLE)
|
318
318
|
end
|
319
319
|
|
320
|
-
it 'produces
|
320
|
+
it 'produces an error for exported class resource' do
|
321
321
|
acceptor = validate(parse('@@class { test: }'))
|
322
|
-
expect(acceptor.warning_count).to eql(
|
323
|
-
expect(acceptor.error_count).to eql(
|
322
|
+
expect(acceptor.warning_count).to eql(0)
|
323
|
+
expect(acceptor.error_count).to eql(1)
|
324
324
|
expect(acceptor).to have_issue(Puppet::Pops::Issues::CLASS_NOT_VIRTUALIZABLE)
|
325
325
|
end
|
326
326
|
end
|
@@ -344,16 +344,16 @@ describe "validating 4x" do
|
|
344
344
|
end
|
345
345
|
end
|
346
346
|
|
347
|
-
it 'produces
|
348
|
-
|
349
|
-
|
350
|
-
|
347
|
+
it 'produces a syntax error for application' do
|
348
|
+
expect {
|
349
|
+
parse('application test {}')
|
350
|
+
}.to raise_error(Puppet::ParseErrorWithIssue, /Syntax error at 'application'/)
|
351
351
|
end
|
352
352
|
|
353
|
-
it 'produces
|
354
|
-
|
355
|
-
|
356
|
-
|
353
|
+
it 'produces a syntax error for capability mapping' do
|
354
|
+
expect {
|
355
|
+
parse('Foo produces Sql {}')
|
356
|
+
}.to raise_error(Puppet::ParseErrorWithIssue, /Syntax error at 'produces'/)
|
357
357
|
end
|
358
358
|
|
359
359
|
it 'produces an error for collect expressions with virtual query' do
|
@@ -410,10 +410,10 @@ describe "validating 4x" do
|
|
410
410
|
expect(acceptor).to have_issue(Puppet::Pops::Issues::EXPRESSION_NOT_SUPPORTED_WHEN_SCRIPTING)
|
411
411
|
end
|
412
412
|
|
413
|
-
it 'produces
|
414
|
-
|
415
|
-
|
416
|
-
|
413
|
+
it 'produces a syntax error for site definitions' do
|
414
|
+
expect {
|
415
|
+
parse('site {}')
|
416
|
+
}.to raise_error(Puppet::ParseErrorWithIssue, /Syntax error at 'site'/)
|
417
417
|
end
|
418
418
|
|
419
419
|
context 'validating apply() blocks' do
|
@@ -468,16 +468,16 @@ describe "validating 4x" do
|
|
468
468
|
expect(acceptor.error_count).to eql(0)
|
469
469
|
end
|
470
470
|
|
471
|
-
it 'produces
|
472
|
-
|
473
|
-
|
474
|
-
|
471
|
+
it 'produces a syntax error for application' do
|
472
|
+
expect {
|
473
|
+
parse('apply("foo.example.com") { application test {} }')
|
474
|
+
}.to raise_error(Puppet::ParseErrorWithIssue, /Syntax error at 'application'/)
|
475
475
|
end
|
476
476
|
|
477
|
-
it 'produces
|
478
|
-
|
479
|
-
|
480
|
-
|
477
|
+
it 'produces a syntax error for capability mapping' do
|
478
|
+
expect {
|
479
|
+
parse('apply("foo.example.com") { Foo produces Sql {} }')
|
480
|
+
}.to raise_error(Puppet::ParseErrorWithIssue, /Syntax error at 'produces'/)
|
481
481
|
end
|
482
482
|
|
483
483
|
it 'produces an error for class expressions' do
|
@@ -504,9 +504,9 @@ describe "validating 4x" do
|
|
504
504
|
end
|
505
505
|
|
506
506
|
it 'produces an error for site definitions' do
|
507
|
-
|
508
|
-
|
509
|
-
|
507
|
+
expect {
|
508
|
+
parse('apply("foo.example.com") { site {} }')
|
509
|
+
}.to raise_error(Puppet::ParseErrorWithIssue, /Syntax error at 'site'/)
|
510
510
|
end
|
511
511
|
|
512
512
|
it 'produces an error for apply() inside apply()' do
|
@@ -669,6 +669,15 @@ describe "validating 4x" do
|
|
669
669
|
'regexp',
|
670
670
|
'pattern',
|
671
671
|
'runtime',
|
672
|
+
'init',
|
673
|
+
'object',
|
674
|
+
'sensitive',
|
675
|
+
'semver',
|
676
|
+
'semverrange',
|
677
|
+
'string',
|
678
|
+
'timestamp',
|
679
|
+
'timespan',
|
680
|
+
'typeset',
|
672
681
|
].each do |name|
|
673
682
|
|
674
683
|
it "produces an error for 'class #{name}'" do
|
@@ -693,6 +702,7 @@ describe "validating 4x" do
|
|
693
702
|
source = "type('a', 'b')"
|
694
703
|
expect(validate(parse(source))).not_to have_any_issues
|
695
704
|
end
|
705
|
+
|
696
706
|
it "should allow using the 'type' as the name of a function with no parameters and a block" do
|
697
707
|
source = "type() |$x| { $x }"
|
698
708
|
expect(validate(parse(source))).not_to have_any_issues
|
@@ -968,6 +978,18 @@ describe "validating 4x" do
|
|
968
978
|
end
|
969
979
|
end
|
970
980
|
|
981
|
+
it "allows a reserved type name" do
|
982
|
+
source = <<-SOURCE
|
983
|
+
class foo {
|
984
|
+
define string() {}
|
985
|
+
foo::string { 'a': }
|
986
|
+
}
|
987
|
+
SOURCE
|
988
|
+
|
989
|
+
acceptor = validate(parse(source, 'path/foo/manifests/init.pp'))
|
990
|
+
expect(acceptor.error_count).to eql(0)
|
991
|
+
end
|
992
|
+
|
971
993
|
it "will give multiple errors in one file with multiple issues" do
|
972
994
|
source = <<-SOURCE
|
973
995
|
class foo {}
|
@@ -992,17 +1014,10 @@ describe "validating 4x" do
|
|
992
1014
|
|
993
1015
|
context "capability annotations" do
|
994
1016
|
['produces', 'consumes'].each do |word|
|
995
|
-
it "
|
996
|
-
expect
|
997
|
-
|
998
|
-
|
999
|
-
it "accepts legal resource and capability types in #{word} clauses" do
|
1000
|
-
expect(validate(parse("Foo produces Bar {}"))).to_not have_issue(Puppet::Pops::Issues::ILLEGAL_CLASSREF)
|
1001
|
-
expect(validate(parse("Mod::Foo produces ::Mod2::Bar {}"))).to_not have_issue(Puppet::Pops::Issues::ILLEGAL_CLASSREF)
|
1002
|
-
end
|
1003
|
-
|
1004
|
-
it "rejects illegal capability types in #{word} clauses" do
|
1005
|
-
expect(validate(parse("Foo produces bar {}"))).to have_issue(Puppet::Pops::Issues::ILLEGAL_CLASSREF)
|
1017
|
+
it "raises a syntax error in #{word} clauses" do
|
1018
|
+
expect {
|
1019
|
+
parse("foo #{word} Bar {}")
|
1020
|
+
}.to raise_error(Puppet::ParseErrorWithIssue, /Syntax error at '#{word}'/)
|
1006
1021
|
end
|
1007
1022
|
end
|
1008
1023
|
end
|
@@ -39,7 +39,7 @@ describe Puppet::Pops::Visitor do
|
|
39
39
|
|
40
40
|
it "should select method for superclass" do
|
41
41
|
duck_processor = DuckProcessor.new
|
42
|
-
expect(duck_processor.hi(42)).to match(/Howdy
|
42
|
+
expect(duck_processor.hi(42)).to match(/Howdy Integer/)
|
43
43
|
end
|
44
44
|
|
45
45
|
it "should select method for superclass" do
|