Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

(maint) mergeup from 1.6.x: desc/docs cleanup #178

Closed
wants to merge 8 commits into from

Commits on Jun 12, 2019

  1. Configuration menu
    Copy the full SHA
    8ee1220 View commit details
    Browse the repository at this point in the history
  2. (FM-7839) Implement 'to_json' method for ResourceShim for bolt

    bolt's `get_resources` uses the `libexec/query_resources.rb` to retrieve
    resources as json from the target nodes. Especially https://github.com/puppetlabs/bolt/blob/7dec6e49d66c7f9ae06088d46ee3330de0ed2fed/libexec/query_resources.rb#L71
    causes `ResourceShims` to fail as they did not implement `to_json`.
    
    This integration test models what `libexec/query_resources.rb` is doing.
    The added `to_json(*)` method now passes this test, and - shown in manual
    testing - works for bolt.
    DavidS committed Jun 12, 2019
    Configuration menu
    Copy the full SHA
    c6d1b3a View commit details
    Browse the repository at this point in the history
  3. Merge pull request puppetlabs#184 from DavidS/backports

    (maint) backport minor fixes from master to 1.6.x
    willmeek committed Jun 12, 2019
    Configuration menu
    Copy the full SHA
    7bcd01a View commit details
    Browse the repository at this point in the history
  4. (maint) implement desc/docs fallback

    This implements the changes specified in puppetlabs/puppet-specifications#141
    
    > The text and examples have been inconsistent with how `desc` vs `docs`
    > has been handled. This change fixes the text and examples to all show
    > and require `desc`, but accept `docs` in places where we showed it
    > previously.
    DavidS committed Jun 12, 2019
    Configuration menu
    Copy the full SHA
    89c8808 View commit details
    Browse the repository at this point in the history
  5. Merge pull request puppetlabs#177 from DavidS/maint-desc-docs-fallbac…

    …k-1.6.x
    
    (maint) implement `desc`/`docs` fallback
    DavidS committed Jun 12, 2019
    Configuration menu
    Copy the full SHA
    a1d9de2 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    461d24c View commit details
    Browse the repository at this point in the history

Commits on Jun 13, 2019

  1. (maint) reset provider cache between tests

    Without this the `provider` mock would leak between tests.
    DavidS committed Jun 13, 2019
    Configuration menu
    Copy the full SHA
    c803808 View commit details
    Browse the repository at this point in the history
  2. (maint) have the #inject_device test clean up after itself

    Before the fix:
    ```
    david@davids:~/git/puppet-resource_api$ SPEC_OPTS="--exclude-pattern spec/\{fixtures/\*\*/\*.rb,fixtures/modules/\*/\*\*/\*.rb\}" bundle exec rspec ./spec/puppet/resource_api/transport_spec.rb[1:4:2:1] ./spec/puppet/resource_api_spec.rb[1:16:2:1] --seed 40589 -fd
    Run options: include {:ids=>{"./spec/puppet/resource_api/transport_spec.rb"=>["1:4:2:1"], "./spec/puppet/resource_api_spec.rb"=>["1:16:2:1"]}}
    
    Randomized with seed 40589
    
    Puppet::ResourceApi::Transport
      #inject_device(name, transport)
        when puppet does not have set_device
          wraps the transport and sets it as current in NetworkDevice
    
    Puppet::ResourceApi
      #load_provider
        when loading a provider that doesn't create the correct class
          should raise Puppet::DevError with message matching /provider class Puppet::Provider::NoClass::NoClass not found/ (FAILED - 1)
    
    Failures:
    
      1) Puppet::ResourceApi#load_provider when loading a provider that doesn't create the correct class should raise Puppet::DevError with message matching /provider class Puppet::Provider::NoClass::NoClass not found/
         Failure/Error: it { expect { described_class.load_provider('no_class') }.to raise_error Puppet::DevError, %r{provider class Puppet::Provider::NoClass::NoClass not found} }
    
           expected Puppet::DevError with message matching /provider class Puppet::Provider::NoClass::NoClass not found/, got #<Puppet::DevError: Found neither the device-specific provider class Puppet::Provider::NoClass::Mocks... the generic provider class Puppet::Provider::NoClass::NoClass in puppet/provider/no_class/no_class> with backtrace:
             # ./lib/puppet/resource_api.rb:437:in `rescue in load_provider'
             # ./lib/puppet/resource_api.rb:416:in `load_provider'
             # ./spec/puppet/resource_api_spec.rb:1202:in `block (5 levels) in <top (required)>'
             # ./spec/puppet/resource_api_spec.rb:1202:in `block (4 levels) in <top (required)>'
         # ./spec/puppet/resource_api_spec.rb:1202:in `block (4 levels) in <top (required)>'
    
    Finished in 0.05427 seconds (files took 0.94482 seconds to load)
    2 examples, 1 failure
    
    Failed examples:
    
    rspec ./spec/puppet/resource_api_spec.rb:1202 # Puppet::ResourceApi#load_provider when loading a provider that doesn't create the correct class should raise Puppet::DevError with message matching /provider class Puppet::Provider::NoClass::NoClass not found/
    
    Randomized with seed 40589
    
    david@davids:~/git/puppet-resource_api$
    ```
    
    After the fix:
    ```
    david@davids:~/git/puppet-resource_api$ SPEC_OPTS="--exclude-pattern spec/\{fixtures/\*\*/\*.rb,fixtures/modules/\*/\*\*/\*.rb\}" bundle exec rspec ./spec/puppet/resource_api/transport_spec.rb[1:4:2:1] ./spec/puppet/resource_api_spec.rb[1:16:2:1] --seed 40589 -fd
    Run options: include {:ids=>{"./spec/puppet/resource_api/transport_spec.rb"=>["1:4:2:1"], "./spec/puppet/resource_api_spec.rb"=>["1:16:2:1"]}}
    
    Randomized with seed 40589
    
    Puppet::ResourceApi::Transport
      #inject_device(name, transport)
        when puppet does not have set_device
          wraps the transport and sets it as current in NetworkDevice
    
    Puppet::ResourceApi
      #load_provider
        when loading a provider that doesn't create the correct class
          should raise Puppet::DevError with message matching /provider class Puppet::Provider::NoClass::NoClass not found/
    
    Finished in 0.03734 seconds (files took 0.95637 seconds to load)
    2 examples, 0 failures
    
    Randomized with seed 40589
    
    david@davids:~/git/puppet-resource_api$
    
    ```
    DavidS committed Jun 13, 2019
    Configuration menu
    Copy the full SHA
    b85f0cb View commit details
    Browse the repository at this point in the history