summaryrefslogtreecommitdiff
path: root/Rakefile
diff options
context:
space:
mode:
authorGarrett Honeycutt <code@garretthoneycutt.com>2013-11-30 11:18:43 -0500
committerGarrett Honeycutt <code@garretthoneycutt.com>2013-11-30 11:18:43 -0500
commit9226037e4e1a3648f8b6809726612acae3046d74 (patch)
tree5d6f633e676860ae6e2a7ffaa0c78e229b1d5ba3 /Rakefile
parent44c181ec0e230768b8dce10de57f9b32638e66e1 (diff)
Add rake tasks to validate and lint files and check with Travis
This patch adds the ability to validate syntax of manifests, templates, and ruby files in lib/ via `rake validate` and the linting of manifests with puppet-lint via `rake lint`. These two commands are chained with running the spec tests in Travis to ensure there are no syntax or style issues.
Diffstat (limited to 'Rakefile')
-rw-r--r--Rakefile16
1 files changed, 16 insertions, 0 deletions
diff --git a/Rakefile b/Rakefile
index 14f1c24..4ed1327 100644
--- a/Rakefile
+++ b/Rakefile
@@ -1,2 +1,18 @@
require 'rubygems'
require 'puppetlabs_spec_helper/rake_tasks'
+require 'puppet-lint/tasks/puppet-lint'
+PuppetLint.configuration.send('disable_80chars')
+PuppetLint.configuration.ignore_paths = ["spec/**/*.pp", "pkg/**/*.pp"]
+
+desc "Validate manifests, templates, and ruby files in lib."
+task :validate do
+ Dir['manifests/**/*.pp'].each do |manifest|
+ sh "puppet parser validate --noop #{manifest}"
+ end
+ Dir['lib/**/*.rb'].each do |lib_file|
+ sh "ruby -c #{lib_file}"
+ end
+ Dir['templates/**/*.erb'].each do |template|
+ sh "erb -P -x -T '-' #{template} | ruby -c"
+ end
+end