forked from pjvds/box-golang-1
-
Notifications
You must be signed in to change notification settings - Fork 0
/
wercker-box.yml
83 lines (74 loc) · 1.89 KB
/
wercker-box.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
name: golang
version: 1.3.2
inherits: wercker/[email protected]
type : main
platform : [email protected]
description : golang
keywords:
- golang
- go
packages :
- git
- mercurial
- bzr
script : |
version="1.3beta2"
sudo apt-get update
sudo apt-get install bzr
sudo apt-get install mercurial
wget https://storage.googleapis.com/golang/go${version}.linux-amd64.tar.gz
sudo tar -C /usr/local -xzf go${version}.linux-amd64.tar.gz
echo "export PATH=$PATH:/usr/local/go/bin" | sudo tee -a /etc/profile
rm go${version}.linux-amd64.tar.gz
# Set GOPATH
export GOPATH="$HOME/go"
echo 'export GOPATH="$HOME/go"' | sudo tee -a /etc/profile
# Adds go bin directory to path so tools
# and buils are available on the commandline
export PATH="$PATH:$GOPATH/bin"
echo 'export PATH="$PATH:$GOPATH/bin"' | sudo tee -a /etc/profile
# Make actual go workspace dir structure
mkdir -p "$HOME/go/{src,pkg,bin}"
box-detect:
priority : 900
version :
detect:
- files:
- .godir
- files:
- main.go
- files:
- app.go
- files:
- server.go
default-build:
go:
priority : 50
detect:
- default: true
text-to-append: |
# Build definition
build:
# The steps that will be executed on build
steps:
# Sets the go workspace and places you package
# at the right place in the workspace tree
- setup-go-workspace
# Gets the dependencies
- script:
name: go get
code: |
cd $WERCKER_SOURCE_DIR
go version
go get -t ./...
# Build the project
- script:
name: go build
code: |
go build ./...
# Test the project
- script:
name: go test
code: |
go test ./...