2014-11-25 8 views
3

Я использую https://github.com/garethr/puppet-module-skeleton как скелет модуля кукол. Для конкретного модуля я использую марионетку с помощью рейка. Соответствующие разделы в моем Rakefile заключаются в следующем:puppet-lint игнорирует опцию ignore_paths

require 'puppet-lint/tasks/puppet-lint' 

PuppetLint.configuration.relative = true 
PuppetLint.configuration.send("disable_80chars") 
PuppetLint.configuration.log_format = "%{path}:%{linenumber}:%{check}:%{KIND}:%{message}" 
PuppetLint.configuration.fail_on_warnings = true 

# Forsake support for Puppet 2.6.2 for the benefit of cleaner code. 
# http://puppet-lint.com/checks/class_parameter_defaults/ 
PuppetLint.configuration.send('disable_class_parameter_defaults') 
# http://puppet-lint.com/checks/class_inherits_from_params_class/ 
PuppetLint.configuration.send('disable_class_inherits_from_params_class') 

exclude_paths = [ 
    "pkg/**/*", 
    "vendor/**/*", 
    "spec/**/*", 
] 
PuppetLint.configuration.ignore_paths = exclude_paths 

При запуске bundle exec rake lint я получаю ожидаемый выход из кукольного пуха, за исключением того, что кукольный ворса проверяет файлы, например, vendor/bundle и spec/fixtures/modules, а также. Кроме того, что это не предназначено, это противоречит последним шести строкам вышеупомянутого фрагмента Rakefile. Что не так?

+0

Там уже был соответствующий вопрос на https://github.com/rodjek/puppet-lint/issues/355 вместе с обходного см https://github.com/rodjek/puppet-lint/проблемы/331. –

+1

Я также предоставил отчет о проблеме на https://github.com/garethr/puppet-module-skeleton/issues/45 вместе с (почти полным) обходным решением для моей ситуации –

ответ

1

Как вы связаны между собой, это в настоящее время нарушена

Это была исправлена ​​в этой фиксации: https://github.com/rodjek/puppet-lint/commit/0f2e2db90d5a14382eafbdfebff74048a487372f

Однако, это было сделано после выпуска 1.1.0

Таким образом, вы можете использовать либо прямой Github ссылка в Bundler (или ждать следующего выпуска)

source "http://rubygems.org" 

group :test do 
    gem "puppet-lint", :git => 'https://github.com/rodjek/puppet-lint.git' 
end 

или использовать работу вокруг вас в курсе:

Rake::Task[:lint].clear 
PuppetLint::RakeTask.new :lint do |config| 
    config.disable_checks = [ 
    '80chars', 
    'class_parameter_defaults', 
    'class_inherits_from_params_class' 
    ] 
    config.log_format = "%{path}:%{linenumber}:%{check}:%{KIND}:%{message}" 
    config.fail_on_warnings = true 
    #config.relative = true 

    config.ignore_paths = exclude_paths 
end 
+0

. Следует отметить, что это обходное решение не работайте с опцией config.relative = true, поэтому вы получите '' autoloader_layout'' ошибки от кукольного-линта –

+0

Теперь я протестировал вашу предложенную альтернативу, отредактировав свой Gemfile, чтобы явно использовать ревизию 0f2e2db ... марионетки, но это не исправляет! (Я проверил, что поставщик/пакет/ruby ​​/ 1.9.1/bundler/gems/puppet-lint-0f2e2db90d5a/lib/puppet-lint/tasks/puppet-lint.rb действительно содержит описанный патч) –

+0

Интересно, я посмотрите, могу ли я воспроизвести это на модуле, который у меня есть, и посмотреть, смогу ли я его исправить. –

 Смежные вопросы

  • Нет связанных вопросов^_^