2018-08-16 14:07:02 +02:00
|
|
|
version: 2
|
|
|
|
jobs:
|
|
|
|
build:
|
|
|
|
docker:
|
2018-08-18 09:27:47 +02:00
|
|
|
- image: circleci/golang:1.10
|
2018-08-16 14:07:02 +02:00
|
|
|
|
2018-08-18 09:27:47 +02:00
|
|
|
working_directory: /go/src/github.com/jesseduffield/lazygit
|
|
|
|
steps:
|
|
|
|
- checkout
|
2018-08-25 21:45:05 +02:00
|
|
|
- restore_cache:
|
|
|
|
keys:
|
|
|
|
- v1-pkg-cache
|
2018-08-26 02:17:46 +02:00
|
|
|
- run:
|
|
|
|
name: Run gofmt -s
|
|
|
|
command: |
|
|
|
|
if [ $(find . ! -path "./vendor/*" -name "*.go" -exec gofmt -s -d {} \;|wc -l) -gt 0 ]; then
|
|
|
|
find . ! -path "./vendor/*" -name "*.go" -exec gofmt -s -d {} \;
|
|
|
|
exit 1;
|
|
|
|
fi
|
2018-08-18 09:27:47 +02:00
|
|
|
- run:
|
|
|
|
name: Run tests
|
|
|
|
command: |
|
|
|
|
./test.sh
|
2018-08-25 15:32:06 +02:00
|
|
|
- run:
|
|
|
|
name: Compile project on every platform
|
|
|
|
command: |
|
|
|
|
go get github.com/mitchellh/gox
|
2018-08-25 21:38:25 +02:00
|
|
|
gox -os "linux freebsd netbsd windows" -osarch "darwin/i386 darwin/amd64"
|
2018-08-18 09:27:47 +02:00
|
|
|
- run:
|
|
|
|
name: Push on codecov result
|
|
|
|
command: |
|
|
|
|
bash <(curl -s https://codecov.io/bash)
|
2018-08-25 21:45:05 +02:00
|
|
|
- save_cache:
|
|
|
|
key: v1-pkg-cache
|
|
|
|
paths:
|
|
|
|
- "/go/pkg"
|
2018-08-16 14:07:02 +02:00
|
|
|
|
2018-08-18 09:27:47 +02:00
|
|
|
release:
|
|
|
|
docker:
|
|
|
|
- image: circleci/golang:1.10
|
2018-08-16 14:07:02 +02:00
|
|
|
working_directory: /go/src/github.com/jesseduffield/lazygit
|
|
|
|
steps:
|
|
|
|
- checkout
|
2018-08-18 09:27:47 +02:00
|
|
|
- run:
|
|
|
|
name: Run gorelease
|
|
|
|
command: |
|
|
|
|
curl -sL https://git.io/goreleaser | bash
|
2018-08-16 14:07:02 +02:00
|
|
|
|
2018-08-18 09:27:47 +02:00
|
|
|
workflows:
|
|
|
|
version: 2
|
|
|
|
build:
|
|
|
|
jobs:
|
|
|
|
- build
|
|
|
|
release:
|
|
|
|
jobs:
|
|
|
|
- release:
|
|
|
|
filters:
|
|
|
|
tags:
|
|
|
|
only: /v[0-9]+(\.[0-9]+)*/
|
|
|
|
branches:
|
|
|
|
ignore: /.*/
|