Sha256: 143f51baee0a9941bb1dba832778fd605f5e8085a46452110c27c438672c7b3f

Contents?: true

Size: 1.34 KB

Versions: 14

Compression:

Stored size: 1.34 KB

Contents

module PuppetLintParamDocs
  # A helper to define a more specific rake task that runs after the
  # usual 'lint' task, but only with param docs checks.  It disables
  # the param docs checks in the main lint task.
  #
  # Allows users to define a more restrictive pattern for param docs
  # checks.
  def self.define_selective(&task_block)
    RakeTask.new.define_selective(&task_block)
  end

  class RakeTask < ::Rake::TaskLib
    include ::Rake::DSL if defined?(::Rake::DSL)

    def define_selective(&task_block)
      PuppetLint::RakeTask.new(:lint_param_docs) do |config|
        config.fail_on_warnings = true
        config.disable_checks = (PuppetLint.configuration.checks - [:parameter_documentation])
        yield config
      end

      # Explicitly enable check as "lint" task will disable it
      task :lint_param_docs_enable do
        PuppetLint.configuration.enable_parameter_documentation
      end
      Rake::Task[:lint_param_docs].enhance [:lint_param_docs_enable]

      # Explicitly disable param doc in general lint task
      task :lint_param_docs_disable do
        PuppetLint.configuration.disable_parameter_documentation
      end
      Rake::Task[:lint].enhance [:lint_param_docs_disable]

      # Run param docs lint after main lint
      Rake::Task[:lint].enhance do
        Rake::Task[:lint_param_docs].invoke
      end
    end
  end
end

Version data entries

14 entries across 14 versions & 1 rubygems

Version Path
puppet-lint-param-docs-1.7.6 lib/puppet-lint-param-docs/tasks.rb
puppet-lint-param-docs-1.7.5 lib/puppet-lint-param-docs/tasks.rb
puppet-lint-param-docs-1.7.4 lib/puppet-lint-param-docs/tasks.rb
puppet-lint-param-docs-1.7.3 lib/puppet-lint-param-docs/tasks.rb
puppet-lint-param-docs-1.7.1 lib/puppet-lint-param-docs/tasks.rb
puppet-lint-param-docs-1.7.0 lib/puppet-lint-param-docs/tasks.rb
puppet-lint-param-docs-1.6.0 lib/puppet-lint-param-docs/tasks.rb
puppet-lint-param-docs-1.5.1 lib/puppet-lint-param-docs/tasks.rb
puppet-lint-param-docs-1.5.0 lib/puppet-lint-param-docs/tasks.rb
puppet-lint-param-docs-1.4.2 lib/puppet-lint-param-docs/tasks.rb
puppet-lint-param-docs-1.4.1 lib/puppet-lint-param-docs/tasks.rb
puppet-lint-param-docs-1.4.0 lib/puppet-lint-param-docs/tasks.rb
puppet-lint-param-docs-1.3.1 lib/puppet-lint-param-docs/tasks.rb
puppet-lint-param-docs-1.3.0 lib/puppet-lint-param-docs/tasks.rb