mirror of
https://github.com/jesseduffield/lazygit.git
synced 2025-04-25 12:24:47 +02:00
update circleci
* define release worflow when a tag is created * add dep install * run tests with coverage * add goreleaser
This commit is contained in:
parent
81b07daa01
commit
fbfa48f0fc
@ -1,26 +1,43 @@
|
|||||||
# Golang CircleCI 2.0 configuration file
|
|
||||||
#
|
|
||||||
# Check https://circleci.com/docs/2.0/language-go/ for more details
|
|
||||||
version: 2
|
version: 2
|
||||||
jobs:
|
jobs:
|
||||||
build:
|
build:
|
||||||
docker:
|
docker:
|
||||||
# specify the version
|
- image: circleci/golang:1.10
|
||||||
- image: circleci/golang:1.9
|
|
||||||
|
|
||||||
# Specify service dependencies here if necessary
|
|
||||||
# CircleCI maintains a library of pre-built images
|
|
||||||
# documented at https://circleci.com/docs/2.0/circleci-images/
|
|
||||||
# - image: circleci/postgres:9.4
|
|
||||||
|
|
||||||
#### TEMPLATE_NOTE: go expects specific checkout path representing url
|
|
||||||
#### expecting it in the form of
|
|
||||||
#### /go/src/github.com/circleci/go-tool
|
|
||||||
#### /go/src/bitbucket.org/circleci/go-tool
|
|
||||||
working_directory: /go/src/github.com/jesseduffield/lazygit
|
working_directory: /go/src/github.com/jesseduffield/lazygit
|
||||||
steps:
|
steps:
|
||||||
- checkout
|
- checkout
|
||||||
|
- run:
|
||||||
|
name: Run tests
|
||||||
|
command: |
|
||||||
|
./test.sh
|
||||||
|
- run:
|
||||||
|
name: Push on codecov result
|
||||||
|
command: |
|
||||||
|
bash <(curl -s https://codecov.io/bash)
|
||||||
|
|
||||||
# specify any bash command here prefixed with `run: `
|
release:
|
||||||
- run: go test -v ./...
|
docker:
|
||||||
- run: bash <(curl -s https://codecov.io/bash)
|
- image: circleci/golang:1.10
|
||||||
|
working_directory: /go/src/github.com/jesseduffield/lazygit
|
||||||
|
steps:
|
||||||
|
- checkout
|
||||||
|
- run:
|
||||||
|
name: Run gorelease
|
||||||
|
command: |
|
||||||
|
curl -sL https://git.io/goreleaser | bash
|
||||||
|
|
||||||
|
workflows:
|
||||||
|
version: 2
|
||||||
|
build:
|
||||||
|
jobs:
|
||||||
|
- build
|
||||||
|
release:
|
||||||
|
jobs:
|
||||||
|
- release:
|
||||||
|
context: org-global
|
||||||
|
filters:
|
||||||
|
tags:
|
||||||
|
only: /v[0-9]+(\.[0-9]+)*/
|
||||||
|
branches:
|
||||||
|
ignore: /.*/
|
||||||
|
1
.gitignore
vendored
1
.gitignore
vendored
@ -13,6 +13,7 @@ TODO.md
|
|||||||
|
|
||||||
# Tests
|
# Tests
|
||||||
test/repos/repo
|
test/repos/repo
|
||||||
|
coverage.txt
|
||||||
|
|
||||||
# Binaries
|
# Binaries
|
||||||
lazygit
|
lazygit
|
14
test.sh
Executable file
14
test.sh
Executable file
@ -0,0 +1,14 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
set -e
|
||||||
|
echo "" > coverage.txt
|
||||||
|
|
||||||
|
for d in $( find ./* -maxdepth 10 ! -path "./vendor*" ! -path "./.git*" -type d); do
|
||||||
|
if ls $d/*.go &> /dev/null; then
|
||||||
|
go test -v -race -coverprofile=profile.out -covermode=atomic $d
|
||||||
|
if [ -f profile.out ]; then
|
||||||
|
cat profile.out >> coverage.txt
|
||||||
|
rm profile.out
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
done
|
Loading…
x
Reference in New Issue
Block a user