``` |
class profile::prometheus::windows_exporter (){ |
service { 'test': |
ensure => 'running', |
enable => true, |
} |
} |
`````` |
require 'spec_helper'describe 'profile::prometheus::windows_exporter' do |
test_on = { |
hardwaremodels: 'x86_64', |
supported_os: [{ 'operatingsystem' => 'windows' }], |
} on_supported_os(test_on).each do |os, os_facts| |
let(:facts) do |
os_facts.merge('kernel' => 'windows') |
end context "on #{os}" do |
context 'enabled' do |
it { |
is_expected.to compile |
} |
end |
end |
end |
end |
``` |
``` |
5) profile::prometheus::windows_exporter on windows-2012-x86_64 enabled is expected to compile into a catalogue without dependency cycles |
Failure/Error: is_expected.to compile NameError: |
uninitialized constant Puppet::Util::Windows::Service |
# ~/.rvm/gems/ruby-2.7.3@puppet-7/gems/puppet-7.12.0/lib/puppet/provider/service/windows.rb:119:in `default_timeout' |
# ~/.rvm/gems/ruby-2.7.3@puppet-7/gems/puppet-7.12.0/lib/puppet/type/service.rb:275:in `block (3 levels) in <module:Puppet>' |
# ~/.rvm/gems/ruby-2.7.3@puppet-7/gems/puppet-7.12.0/lib/puppet/type.rb:844:in `set_default' |
# ~/.rvm/gems/ruby-2.7.3@puppet-7/gems/rspec-puppet-2.10.0/lib/rspec-puppet/monkey_patches.rb:88:in `call' |
# ~/.rvm/gems/ruby-2.7.3@puppet-7/gems/rspec-puppet-2.10.0/lib/rspec-puppet/monkey_patches.rb:88:in `block in <class:Type>' |
# ~/.rvm/gems/ruby-2.7.3@puppet-7/gems/puppet-7.12.0/lib/puppet/type.rb:2485:in `block in set_parameters' |
# ~/.rvm/gems/ruby-2.7.3@puppet-7/gems/puppet-7.12.0/lib/puppet/type.rb:2484:in `each' |
# ~/.rvm/gems/ruby-2.7.3@puppet-7/gems/puppet-7.12.0/lib/puppet/type.rb:2484:in `set_parameters' |
# ~/.rvm/gems/ruby-2.7.3@puppet-7/gems/puppet-7.12.0/lib/puppet/type.rb:2373:in `initialize' |
# ~/.rvm/gems/ruby-2.7.3@puppet-7/gems/puppet-7.12.0/lib/puppet/resource.rb:475:in `new' |
# ~/.rvm/gems/ruby-2.7.3@puppet-7/gems/puppet-7.12.0/lib/puppet/resource.rb:475:in `to_ral' |
# ~/.rvm/gems/ruby-2.7.3@puppet-7/gems/puppet-7.12.0/lib/puppet/resource/catalog.rb:610:in `block in to_catalog' |
# ~/.rvm/gems/ruby-2.7.3@puppet-7/gems/puppet-7.12.0/lib/puppet/resource/catalog.rb:602:in `each' |
# ~/.rvm/gems/ruby-2.7.3@puppet-7/gems/puppet-7.12.0/lib/puppet/resource/catalog.rb:602:in `to_catalog' |
# ~/.rvm/gems/ruby-2.7.3@puppet-7/gems/puppet-7.12.0/lib/puppet/resource/catalog.rb:495:in `to_ral' |
# ~/.rvm/gems/ruby-2.7.3@puppet-7/gems/rspec-puppet-2.10.0/lib/rspec-puppet/matchers/compile.rb:149:in `cycles_found?' |
# ~/.rvm/gems/ruby-2.7.3@puppet-7/gems/rspec-puppet-2.10.0/lib/rspec-puppet/matchers/compile.rb:25:in `matches?' |
# ~/.rvm/gems/ruby-2.7.3@puppet-7/gems/rspec-expectations-3.10.1/lib/rspec/expectations/handler.rb:51:in `block in handle_matcher' |
# ~/.rvm/gems/ruby-2.7.3@puppet-7/gems/rspec-expectations-3.10.1/lib/rspec/expectations/handler.rb:27:in `with_matcher' |
# ~/.rvm/gems/ruby-2.7.3@puppet-7/gems/rspec-expectations-3.10.1/lib/rspec/expectations/handler.rb:48:in `handle_matcher' |
# ~/.rvm/gems/ruby-2.7.3@puppet-7/gems/rspec-expectations-3.10.1/lib/rspec/expectations/expectation_target.rb:65:in `to' |
# ~/s/prometheus/windows_exporter_spec.rb:27:in `block (5 levels) in <top (required)>' |
# ~/.rvm/gems/ruby-2.7.3@puppet-7/gems/rspec-core-3.10.1/lib/rspec/core/example.rb:262:in `instance_exec' |
# ~/.rvm/gems/ruby-2.7.3@puppet-7/gems/rspec-core-3.10.1/lib/rspec/core/example.rb:262:in `block in run' |
# ~/.rvm/gems/ruby-2.7.3@puppet-7/gems/rspec-core-3.10.1/lib/rspec/core/example.rb:508:in `block in with_around_and_singleton_context_hooks' |
# ~/.rvm/gems/ruby-2.7.3@puppet-7/gems/rspec-core-3.10.1/lib/rspec/core/example.rb:465:in `block in with_around_example_hooks' |
# ~/.rvm/gems/ruby-2.7.3@puppet-7/gems/rspec-core-3.10.1/lib/rspec/core/hooks.rb:486:in `block in run' |
# ~/.rvm/gems/ruby-2.7.3@puppet-7/gems/rspec-core-3.10.1/lib/rspec/core/hooks.rb:624:in `run_around_example_hooks_for' |
# ~/.rvm/gems/ruby-2.7.3@puppet-7/gems/rspec-core-3.10.1/lib/rspec/core/hooks.rb:486:in `run' |
# ~/.rvm/gems/ruby-2.7.3@puppet-7/gems/rspec-core-3.10.1/lib/rspec/core/example.rb:465:in `with_around_example_hooks' |
# ~/.rvm/gems/ruby-2.7.3@puppet-7/gems/rspec-core-3.10.1/lib/rspec/core/example.rb:508:in `with_around_and_singleton_context_hooks' |
# ~/.rvm/gems/ruby-2.7.3@puppet-7/gems/rspec-core-3.10.1/lib/rspec/core/example.rb:259:in `run' |
# ~/.rvm/gems/ruby-2.7.3@puppet-7/gems/rspec-core-3.10.1/lib/rspec/core/example_group.rb:644:in `block in run_examples' |
# ~/.rvm/gems/ruby-2.7.3@puppet-7/gems/rspec-core-3.10.1/lib/rspec/core/example_group.rb:640:in `map' |
# ~/.rvm/gems/ruby-2.7.3@puppet-7/gems/rspec-core-3.10.1/lib/rspec/core/example_group.rb:640:in `run_examples' |
# ~/.rvm/gems/ruby-2.7.3@puppet-7/gems/rspec-core-3.10.1/lib/rspec/core/example_group.rb:606:in `run' |
# ~/.rvm/gems/ruby-2.7.3@puppet-7/gems/rspec-core-3.10.1/lib/rspec/core/example_group.rb:607:in `block in run' |
# ~/.rvm/gems/ruby-2.7.3@puppet-7/gems/rspec-core-3.10.1/lib/rspec/core/example_group.rb:607:in `map' |
# ~/.rvm/gems/ruby-2.7.3@puppet-7/gems/rspec-core-3.10.1/lib/rspec/core/example_group.rb:607:in `run' |
# ~/.rvm/gems/ruby-2.7.3@puppet-7/gems/rspec-core-3.10.1/lib/rspec/core/example_group.rb:607:in `block in run' |
# ~/.rvm/gems/ruby-2.7.3@puppet-7/gems/rspec-core-3.10.1/lib/rspec/core/example_group.rb:607:in `map' |
# ~/.rvm/gems/ruby-2.7.3@puppet-7/gems/rspec-core-3.10.1/lib/rspec/core/example_group.rb:607:in `run' |
# ~/.rvm/gems/ruby-2.7.3@puppet-7/gems/rspec-core-3.10.1/lib/rspec/core/runner.rb:121:in `block (3 levels) in run_specs' |
# ~/.rvm/gems/ruby-2.7.3@puppet-7/gems/rspec-core-3.10.1/lib/rspec/core/runner.rb:121:in `map' |
# ~/.rvm/gems/ruby-2.7.3@puppet-7/gems/rspec-core-3.10.1/lib/rspec/core/runner.rb:121:in `block (2 levels) in run_specs' |
# ~/.rvm/gems/ruby-2.7.3@puppet-7/gems/rspec-core-3.10.1/lib/rspec/core/configuration.rb:2067:in `with_suite_hooks' |
# ~/.rvm/gems/ruby-2.7.3@puppet-7/gems/rspec-core-3.10.1/lib/rspec/core/runner.rb:116:in `block in run_specs' |
# ~/.rvm/gems/ruby-2.7.3@puppet-7/gems/rspec-core-3.10.1/lib/rspec/core/reporter.rb:74:in `report' |
# ~/.rvm/gems/ruby-2.7.3@puppet-7/gems/rspec-core-3.10.1/lib/rspec/core/runner.rb:115:in `run_specs' |
# ~/.rvm/gems/ruby-2.7.3@puppet-7/gems/rspec-core-3.10.1/lib/rspec/core/runner.rb:89:in `run' |
# ~/.rvm/gems/ruby-2.7.3@puppet-7/gems/rspec-core-3.10.1/lib/rspec/core/runner.rb:71:in `run' |
# ~/.rvm/gems/ruby-2.7.3@puppet-7/gems/rspec-core-3.10.1/lib/rspec/core/runner.rb:45:in `invoke' |
# ~/.rvm/gems/ruby-2.7.3@puppet-7/gems/rspec-core-3.10.1/exe/rspec:4:in `<main>' |
`````` |
$ gem list |grep -E 'puppet|rake|spec' |
pathspec (1.0.0) |
puppet (7.12.0) |
puppet-blacksmith (6.1.1) |
puppet-debugger (1.2.0) |
puppet-lint (2.5.2) |
puppet-lint-duplicate_class_parameters-check (1.0.5) |
puppet-lint-param-docs (1.7.5) |
puppet-lint-param-types (0.0.1) |
puppet-lint-strict_indent-check (2.0.8) |
puppet-lint-template_file_extension-check (0.1.3) |
puppet-module-posix-default-r2.7 (1.1.1) |
puppet-module-posix-dev-r2.7 (1.1.1) |
puppet-module-posix-system-r2.7 (1.1.1) |
puppet-modulebuilder (0.3.0) |
puppet-resource_api (1.8.14) |
puppet-strings (2.8.0) |
puppet-syntax (3.1.0) |
puppet_forge (2.3.4) |
puppet_litmus (0.30.0) |
puppetfile-resolver (0.5.0) |
puppetlabs_spec_helper (3.0.0) |
rake (13.0.1, 12.3.3) |
rspec (3.10.0) |
rspec-core (3.10.1) |
rspec-expectations (3.10.1) |
rspec-its (1.3.0) |
rspec-mocks (3.10.2) |
rspec-puppet (2.10.0) |
rspec-puppet-facts (2.0.3) |
rspec-support (3.10.2) |
rspec_honeycomb_formatter (0.2.1) |
rspec_junit_formatter (0.4.1) |
rubocop-rspec (2.0.1) |
semantic_puppet (1.0.4) |
serverspec (2.41.8) |
specinfra (2.82.2)``` |