]> git.openstreetmap.org Git - chef.git/blobdiff - hooks/pre-commit
Update hooks to run rubocop and foodcritic via bundler
[chef.git] / hooks / pre-commit
index 55d23300cee8c20ff844da2a421821cd7bd7da7b..4e45ba7b50d47fe1d74a957851c40ef05696f692 100755 (executable)
@@ -3,7 +3,7 @@
 ok = true
 
 if IO.popen(["git", "ls-files", "--unmerged"]).read.empty?
-  need_stash = IO.popen(%w(git diff)).read.length > 0
+  need_stash = !IO.popen(%w(git diff)).read.empty?
 
   system("git", "stash", "save", "--keep-index", "--quiet") if need_stash
 
@@ -15,11 +15,11 @@ if IO.popen(["git", "ls-files", "--unmerged"]).read.empty?
     file =~ /\.rb$/ || `file --brief --mime-type #{file}` == "text/x-ruby\n"
   end
 
-  ok &&= system("rubocop", *ruby_files) unless ruby_files.empty?
+  ok &&= system("bundle", "exec", "rubocop", *ruby_files) unless ruby_files.empty?
 
   cookbooks = files.grep(%r{(cookbooks/[^/]+)/}) { Regexp.last_match(1) }.uniq
 
-  ok &&= system("foodcritic", "-f", "any", *cookbooks) unless cookbooks.empty?
+  ok &&= system("bundle", "exec", "foodcritic", "-f", "any", *cookbooks) unless cookbooks.empty?
 
   system("git", "stash", "pop", "--quiet") if need_stash
 else