diff options
author | varac <varacanero@zeromail.org> | 2016-04-25 16:41:34 -0300 |
---|---|---|
committer | varac <varacanero@zeromail.org> | 2016-04-25 16:41:34 -0300 |
commit | 07f8cf9c307471128eef1ded3a77633869c89bcd (patch) | |
tree | 22705e582bb300936db0fb343402011b704f9596 /Rakefile | |
parent | 2c5d27327bc1a90f5813e55a40d0acac644a13eb (diff) | |
parent | f2f2c7391056c252523730cd76ab759db9117c9c (diff) |
Merge branch 'linting' into develop
Diffstat (limited to 'Rakefile')
-rw-r--r-- | Rakefile | 47 |
1 files changed, 47 insertions, 0 deletions
diff --git a/Rakefile b/Rakefile new file mode 100644 index 00000000..8f7a9686 --- /dev/null +++ b/Rakefile @@ -0,0 +1,47 @@ +require 'puppetlabs_spec_helper/rake_tasks' +require 'puppet-lint/tasks/puppet-lint' +require 'puppet-syntax/tasks/puppet-syntax' + +# return list of modules, either +# submodules or custom modules +# so we can check each array seperately +def modules_pattern (type) + submodules = Array.new + custom_modules = Array.new + + Dir['puppet/modules/*'].sort.each do |m| + system("grep -q #{m} .gitmodules") + if $?.exitstatus == 0 + submodules << m + '/**/*.pp' + else + custom_modules << m + '/**/*.pp' + end + end + + if type == 'submodule' + submodules + elsif type == 'custom' + custom_modules + else + end + +end + + + +# redefine lint task with specific configuration +Rake::Task[:lint].clear +desc "boo" +PuppetLint::RakeTask.new :lint do |config| + # Pattern of files to check, defaults to `**/*.pp` + config.pattern = modules_pattern('custom') + config.ignore_paths = ["spec/**/*.pp", "pkg/**/*.pp", "vendor/**/*.pp"] + config.disable_checks = ['documentation', '80chars'] + config.fail_on_warnings = false +end + +# rake syntax::* tasks +PuppetSyntax.exclude_paths = ["**/vendor/**/*"] + +desc "Run all puppet checks required for CI" +task :test => [:lint, :syntax , :validate, :spec] |