Hashar has uploaded a new change for review. ( 
https://gerrit.wikimedia.org/r/338386 )

Change subject: Introduce linters using rake
......................................................................

Introduce linters using rake

Add a Rakefile and depends on puppet-syntax/puppet-lint. That lets one
easily check syntax of manifests and templates as well as puppet style
recommandation (puppet-lint).

Ignore puppet-lint 80 chars line limit.
Instruct puppet-lint to threat module with relative path or it fails
under Jenkins which checkout the source code in a directory named after
the job.

Add Gem dependecy safe_yaml ~> 1.0.4 since Puppet 3.7 fails on ruby 2.2+
(eg ruby2.4 on Mac). https://tickets.puppetlabs.com/browse/PUP-3796

Git ignore Gemfile.lock, that is only needed for deployment purposes.

To test locally:

  bundle install
  bundle exec rake test

Bug: T154894
Change-Id: Id8e19ee14cc1673e84278b30a5e4eddf5192ea77
---
A .gitignore
A .puppet-lint.rc
A Gemfile
M Rakefile
4 files changed, 33 insertions(+), 2 deletions(-)


  git pull ssh://gerrit.wikimedia.org:29418/operations/puppet/nginx 
refs/changes/86/338386/1

diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..66f8ed3
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1 @@
+/Gemfile.lock
diff --git a/.puppet-lint.rc b/.puppet-lint.rc
new file mode 100644
index 0000000..b0d12b7
--- /dev/null
+++ b/.puppet-lint.rc
@@ -0,0 +1 @@
+--no-80chars-check
diff --git a/Gemfile b/Gemfile
new file mode 100644
index 0000000..5d42d08
--- /dev/null
+++ b/Gemfile
@@ -0,0 +1,11 @@
+source 'https://rubygems.org'
+
+gem 'rake'
+gem 'puppet', '~> 3.7.0'
+# Puppet 3.7 fails on ruby 2.2+
+# https://tickets.puppetlabs.com/browse/PUP-3796
+gem 'safe_yaml', '~> 1.0.4'
+
+gem 'rspec-puppet', '~> 2.3.2'
+gem 'puppet-lint', '1.1.0'
+gem 'puppet-syntax'
diff --git a/Rakefile b/Rakefile
index 6471966..aaf1f9a 100644
--- a/Rakefile
+++ b/Rakefile
@@ -1,7 +1,25 @@
+require 'bundler/setup'
 require 'rake'
-
 require 'rspec/core/rake_task'
+require 'puppet-lint/tasks/puppet-lint'
+require 'puppet-syntax/tasks/puppet-syntax'
+
+# To please Jenkins
+# https://github.com/rodjek/puppet-lint/issues/361
+PuppetLint.configuration.relative = true
 
 RSpec::Core::RakeTask.new(:spec) do |t|
-  t.pattern = 'spec/*/*_rspec.rb'
+    t.pattern = 'spec/*/*_rspec.rb'
+end
+
+task :default => [:help]
+
+desc 'Run all build/tests commands (CI entry point)'
+task :test => [
+    :syntax,
+    :lint,
+]
+
+task :help do
+    system "rake -T"
 end

-- 
To view, visit https://gerrit.wikimedia.org/r/338386
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: Id8e19ee14cc1673e84278b30a5e4eddf5192ea77
Gerrit-PatchSet: 1
Gerrit-Project: operations/puppet/nginx
Gerrit-Branch: master
Gerrit-Owner: Hashar <[email protected]>

_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to