From 0d6b04c21a8308701416c15c1594d6253d848753 Mon Sep 17 00:00:00 2001
From: Gael Chamoulaud <gchamoul@redhat.com>
Date: Tue, 13 Oct 2015 13:15:15 +0200
Subject: [PATCH] Add Puppet 4.x lint checks

- This change adds Puppet-lint bits for checking Puppet manifests.

Change-Id: I82869d8f9f6c64ac2a95429f453c3cb76c046974
Signed-off-by: Gael Chamoulaud <gchamoul@redhat.com>
---
 .gitignore |  2 ++
 Gemfile    | 24 ++++++++++++++++++++++++
 Rakefile   |  5 +++++
 3 files changed, 31 insertions(+)
 create mode 100644 Gemfile
 create mode 100644 Rakefile

diff --git a/.gitignore b/.gitignore
index 3035c9e5ba..6996d50098 100644
--- a/.gitignore
+++ b/.gitignore
@@ -45,6 +45,8 @@ nosetests.xml
 
 *~
 *.swp
+*.bundle
+Gemfile.lock
 
 doc/_build
 
diff --git a/Gemfile b/Gemfile
new file mode 100644
index 0000000000..302ef41525
--- /dev/null
+++ b/Gemfile
@@ -0,0 +1,24 @@
+source 'https://rubygems.org'
+
+group :development, :test do
+  gem 'puppetlabs_spec_helper', :require => false
+
+  gem 'puppet-lint', '~> 1.1'
+  gem 'puppet-lint-absolute_classname-check'
+  gem 'puppet-lint-absolute_template_path'
+  gem 'puppet-lint-trailing_newline-check'
+
+  # Puppet 4.x related lint checks
+  gem 'puppet-lint-unquoted_string-check'
+  gem 'puppet-lint-leading_zero-check'
+  gem 'puppet-lint-variable_contains_upcase'
+  gem 'puppet-lint-numericvariable'
+end
+
+if puppetversion = ENV['PUPPET_GEM_VERSION']
+  gem 'puppet', puppetversion, :require => false
+else
+  gem 'puppet', :require => false
+end
+
+# vim:ft=ruby
diff --git a/Rakefile b/Rakefile
new file mode 100644
index 0000000000..3d62bb6304
--- /dev/null
+++ b/Rakefile
@@ -0,0 +1,5 @@
+require 'puppetlabs_spec_helper/rake_tasks'
+require 'puppet-lint/tasks/puppet-lint'
+
+PuppetLint.configuration.fail_on_warnings = true
+PuppetLint.configuration.send('disable_80chars')