-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathcircle.yml
40 lines (32 loc) · 1.66 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
machine:
timezone: Europe/Berlin
services:
- docker
dependencies:
pre:
# Setup Docker
- sed "s/<EMAIL>/$DOCKER_EMAIL/;s/<AUTH>/$DOCKER_AUTH/" < .dockercfg.template > ~/.dockercfg
override:
# Build darwin binary
- sudo docker-compose -f docker-compose-develop.yml run -e GOOS=darwin -e GOARCH=amd64 project ./build
# Build darwin release
- ./scripts/release $(./scripts/version) darwin --package-only
# Build linux binary
- sudo docker-compose -f docker-compose-develop.yml run -e GOOS=linux -e GOARCH=amd64 project ./build
# Build linux release tarball
- ./scripts/release $(./scripts/version) linux --package-only
test:
override:
#- sudo docker-compose -f docker-compose-develop.yml run project go vet ./... 2>&1 | grep -v '^vendor\/' | grep -v '^exit\ status\ 1'
#- sudo docker-compose -f docker-compose-develop.yml run project errcheck -asserts -blank ./...
- sudo docker-compose -f docker-compose-develop.yml run project godep go test ./... -cover -tags=integration
- sudo docker-compose -f docker-compose-develop.yml run project bash -c 'lint=`golint ./... | grep -v "^vendor\/" || true`; if [[ -n $lint ]]; then echo "$lint"; false; fi;'
post:
- mkdir -p $CIRCLE_ARTIFACTS/release
- sudo cp ./release/project-$(./scripts/version)-linux-amd64.tar.gz $CIRCLE_ARTIFACTS/release
- sudo cp ./release/project-$(./scripts/version)-darwin-amd64.tar.gz $CIRCLE_ARTIFACTS/release
deployment:
release:
tag: /v[0-9]+(\.[0-9]+)*/
commands:
- ./scripts/upload-artifacts $(./scripts/version) ./release