Skip to content
Snippets Groups Projects

Add hello-world Go executable and gitaly-proto 0.5.0

Merged Jacob Vosmaer (GitLab) requested to merge go-hello-world into master
All threads resolved!
Files
5
bin/compile 0 → 100755
+ 32
0
#!/usr/bin/env ruby
require 'fileutils'
# This will cause ROOT_PATH to get set
require_relative '../lib/gitlab_init'
GO_DIR = 'go'
GOPATH = File.join(ROOT_PATH, 'go_build')
GO_PACKAGE = File.join('gitlab.com/gitlab-org/gitlab-shell', GO_DIR)
def main
FileUtils.rm_rf(GOPATH)
build_source_dir = File.join(GOPATH, 'src', GO_PACKAGE)
FileUtils.mkdir_p(build_source_dir)
FileUtils.cp_r(File.join(ROOT_PATH, GO_DIR, '.'), build_source_dir)
run!({ 'GOPATH' => GOPATH }, %W[go install #{GO_PACKAGE}/cmd/...])
executables = Dir["#{File.join(GOPATH, 'bin')}/*"]
FileUtils.chmod(0755, executables)
FileUtils.cp(executables, File.join(ROOT_PATH, 'bin'))
end
def run!(env, cmd)
raise "env must be a hash" unless env.is_a?(Hash)
raise "cmd must be an array" unless cmd.is_a?(Array)
if !system(env, *cmd)
abort "command failed: #{env.inspect} #{cmd.join(' ')}"
end
end
main
Loading