A puppet-lint plugin to check that classes are included by their absolute name.
$ gem install puppet-lint-absolute_classname-check
gem 'puppet-lint-absolute_classname-check', :require => false
Including a class by a relative name might lead to unexpected results in Puppet 3. That's why a lot of manifests explicitly include by the absolute name. Since Puppet 4 names are always absolute and this is no longer needed. This lint check helps to clean up your manifests.
include ::foobar
include foobar
To disable this check, you can add --no-relative_classname_inclusion-check
to your puppet-lint command line.
$ puppet-lint --no-relative_classname_inclusion-check path/to/file.pp
Alternatively, if you’re calling puppet-lint via the Rake task, you should insert the following line to your Rakefile
.
PuppetLint.configuration.send('disable_relative_classname_inclusion')
Class['::foo'] -> Class['::bar']
Class['foo'] -> Class['bar']
To disable this check, you can add --no-relative_classname_reference-check
to your puppet-lint command line.
$ puppet-lint --no-relative_classname_reference-check path/to/file.pp
Alternatively, if you’re calling puppet-lint via the Rake task, you should insert the following line to your Rakefile
.
PuppetLint.configuration.send('disable_relative_classname_reference')
This plugin was originally authored by Camptocamp. The maintainer preferred that Puppet Community take ownership of the module for future improvement and maintenance. Existing pull requests and issues were transferred over, please fork and continue to contribute here instead of Camptocamp.
Previously: https://github.com/camptocamp/puppet-lint-absolute_classname-check
This gem is licensed under the Apache-2 license.
To make a new release, please do:
- Update the version in the
puppet-lint-absolute_classname-check.gemspec
file - Install gems with
bundle install --with release --path .vendor
- generate the changelog with
bundle exec rake changelog
- Create a PR with it
- After it got merged, push a tag. Travis will do the actual release