Commit 0fba550d authored by Jacob Vosmaer's avatar Jacob Vosmaer

Add hello-world executable

parent 684599da
...@@ -11,3 +11,5 @@ tags ...@@ -11,3 +11,5 @@ tags
.bundle/ .bundle/
custom_hooks custom_hooks
hooks/*.d hooks/*.d
/go_build
/bin/hello-world
...@@ -66,9 +66,12 @@ make ...@@ -66,9 +66,12 @@ make
sudo make install sudo make install
``` ```
To install gitlab-shell you also need a Go compiler version 1.5 or newer. https://golang.org/dl/
## Setup ## Setup
./bin/install ./bin/install
./bin/compile
## Check ## Check
......
#!/usr/bin/env ruby
require 'fileutils'
# This will set the ROOT_PATH variable
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)
env = {
'GOPATH' => GOPATH,
'GO15VENDOREXPERIMENT' => '1',
}
run!(env, %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
# Go executables for gitlab-shell
This directory contains Go executables for use in gitlab-shell. To add
a new command `foobar` create a subdirectory `cmd/foobar` and put your
code in `package main` under `cmd/foobar`. This will automatically get
compiled into `bin/foobar` by `../bin/compile`.
package main
import "fmt"
func main() {
fmt.Println("Hello, world!")
}
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment