forked from packetloop/terraform-provider-kafka
-
Notifications
You must be signed in to change notification settings - Fork 0
/
circle.yml
61 lines (56 loc) · 1.88 KB
/
circle.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
machine:
environment:
GODIST: "go1.8.linux-amd64.tar.gz"
IMPORT_PATH: "github.com/$CIRCLE_PROJECT_USERNAME/$CIRCLE_PROJECT_REPONAME"
PROJECT_DIR: "/home/ubuntu/.go_workspace/src/$IMPORT_PATH"
post:
- mkdir -p download
- test -e download/$GODIST || curl -o download/$GODIST https://storage.googleapis.com/golang/$GODIST
- sudo rm -rf /usr/local/go
- sudo tar -C /usr/local -xzf download/$GODIST
dependencies:
cache_directories:
- ~/download
pre:
- sudo mkdir -p ~/.go_workspace/src
- sudo add-apt-repository ppa:masterminds/glide -y
- sudo apt-get update
- sudo apt-get install glide -y
override:
- glide install
- sudo mkdir -p "$PROJECT_DIR"
- sudo rsync -az --delete ./ "$PROJECT_DIR"
test:
override:
- cd "$PROJECT_DIR" && go test -cover $(glide nv)
deployment:
release:
tag: /v.*/
commands:
- go get github.com/tcnksm/ghr
- go get github.com/mitchellh/gox
- |
cd "$PROJECT_DIR" && \
gox -osarch="netbsd/arm" \
-osarch="freebsd/amd64" \
-osarch="darwin/386" \
-osarch="darwin/amd64" \
-osarch="linux/386" \
-osarch="linux/amd64" \
-osarch="linux/arm" \
-osarch="freebsd/386" \
-osarch="openbsd/386" \
-osarch="openbsd/amd64" \
-osarch="netbsd/386" \
-osarch="freebsd/arm" \
-osarch="netbsd/amd64" \
-ldflags="-X main.Version=$(echo $CIRCLE_TAG | sed 's/^v//g') -X main.BuildDate=$BUILD_DATE" \
-output="dist/${CIRCLE_PROJECT_REPONAME}.{{.OS}}_{{.Arch}}.bin"
- |
for x in $PROJECT_DIR/dist/*.bin; do
chmod a+x $x
gzip $x
done
- |
cd "$PROJECT_DIR" && ghr -u $CIRCLE_PROJECT_USERNAME -t $GITHUB_TOKEN -r $CIRCLE_PROJECT_REPONAME \
--replace $CIRCLE_TAG dist/