« Back to Index

Go Guardfile: bundle exec guard

View original Gist on GitHub

Gemfile

source "https://rubygems.org"

gem "guard"
gem "guard-shell"
gem "terminal-notifier" # brew upgrade terminal-notifier
gem "terminal-notifier-guard"

Go Guardfile.rb

require "terminal-notifier-guard"

guard :shell do
  watch(/(.*).go/) do |m|
    puts "m: #{m}" # m: ["file-that-was-modified", "folder-file-sits-inside"]
    
    issues = ""

    `golint #{m.first}`.tap { |res| issues = res }

    puts "\nissues:\n#{issues}" unless issues.empty?

    `go run #{m.first}` if issues.empty?
  end
end