chrly/.travis.yml

42 lines
1015 B
YAML
Raw Normal View History

2018-02-16 03:16:20 +05:30
sudo: required
language: go
go:
- 1.9
services:
- docker
stages:
- test
2018-02-16 23:28:29 +05:30
- name: deploy
if: branch = master OR tag IS present
2018-02-16 03:16:20 +05:30
2018-02-16 23:28:29 +05:30
install:
2018-02-16 03:16:20 +05:30
- go get -u github.com/golang/dep/cmd/dep
2018-02-16 23:28:29 +05:30
- dep ensure
2018-02-16 03:16:20 +05:30
jobs:
include:
- stage: test
script:
2018-02-16 23:28:29 +05:30
- go test -v -race ./...
- stage: deploy
2018-02-16 03:16:20 +05:30
script:
- docker login -u="$DOCKER_USERNAME" -p="$DOCKER_PASSWORD"
2018-02-16 23:28:29 +05:30
- export DOCKER_TAG="${TRAVIS_TAG:-dev}"
- export APP_VERSION="${TRAVIS_TAG:-dev-${TRAVIS_COMMIT:0:7}}"
2018-02-16 03:16:20 +05:30
- >
2018-02-17 03:55:24 +05:30
env CGO_ENABLED=0 GOOS=linux GOARCH=amd64
2018-02-16 03:16:20 +05:30
go build
-o release/chrly
-ldflags '-extldflags "-static" -X github.com/elyby/chrly/bootstrap.version=$APP_VERSION'
2018-02-16 03:16:20 +05:30
main.go
2018-02-16 23:28:29 +05:30
- docker build -t elyby/chrly:$DOCKER_TAG .
- docker push elyby/chrly:$DOCKER_TAG
- |
2018-02-17 04:51:03 +05:30
if [ ! -z ${TRAVIS_TAG+x} ] && [[ "$TRAVIS_TAG" != *"-"* ]]; then
2018-02-16 23:28:29 +05:30
docker tag elyby/chrly:$DOCKER_TAG elyby/chrly:latest
docker push elyby/chrly:latest
fi