diff --git a/lib/sprinkle/installers/go.rb b/lib/sprinkle/installers/go.rb new file mode 100644 index 0000000..5f331ff --- /dev/null +++ b/lib/sprinkle/installers/go.rb @@ -0,0 +1,43 @@ +module Sprinkle + module Installers + # The go package installer installs Go package. + # + # + # == Example Usage + # + # A simple installation: + # + # package :magic_beans do + # description "Beans beans they're good for your heart..." + # go 'magic_beans' + # end + # + # You may also specify multiple packages as an array: + # + # package :magic_beans do + # go %w(magic_beans magic_sauce) + # end + # + class Go < PackageInstaller + + ## + # installs the Go packages passed + # :method: go + # :call-seq: go(*packages) + auto_api :go + + verify_api do + def has_go(package) + @commands << " go list '...' | grep -E '^#{package}$'" + end + end + + protected + + def install_commands #:nodoc: + cmd = "#{sudo_cmd}go get #{@packages.join(' ')}" + end + + end + end +end