Unverified Commit 2ed84f45 authored by vyzo's avatar vyzo Committed by GitHub

RIP travis, Long Live CircleCI (#414)

* RIP travis

* add CircleCI config
parent e6eff445
version: 2.1
orbs:
go: gotest/tools@0.0.13
executors:
golang:
docker:
- image: circleci/golang:1.15.5
resource_class: 2xlarge
ubuntu:
docker:
- image: ubuntu:20.04
commands:
prepare:
steps:
- checkout
jobs:
build-all:
executor: golang
steps:
- prepare
- run:
name: go build
command: |
go build ./...
test:
parameters:
executor:
type: executor
default: golang
go-test-flags:
type: string
default: "-timeout 30m"
description: Flags passed to go test.
gotestsum-format:
type: string
default: testname
description: gotestsum format. https://github.com/gotestyourself/gotestsum#format
coverage:
type: string
default: -coverprofile=coverage.txt -coverpkg=github.com/libp2p/go-libp2p-pubsub
description: Coverage flag. Set to the empty string to disable.
codecov-upload:
type: boolean
default: false
description: |
Upload coverage report to https://codecov.io/. Requires the codecov API token to be
set as an environment variable for private projects.
executor: << parameters.executor >>
steps:
- prepare
- go/install-gotestsum:
gobin: $HOME/.local/bin
version: 0.5.2
- run:
name: go test
command: |
ulimit -n 2048
mkdir -p /tmp/test-reports
mkdir -p /tmp/test-artifacts
gotestsum \
--format << parameters.gotestsum-format >> \
--junitfile /tmp/test-reports/junit.xml \
--jsonfile /tmp/test-artifacts/output.json \
-- \
<< parameters.coverage >> \
<< parameters.go-test-flags >> \
github.com/libp2p/go-libp2p-pubsub
no_output_timeout: 30m
- store_test_results:
path: /tmp/test-reports
- store_artifacts:
path: /tmp/test-artifacts/output.json
- when:
condition: << parameters.codecov-upload >>
steps:
- go/install: {package: bash}
- go/install: {package: curl}
- run:
shell: /bin/bash -eo pipefail
command: |
bash <(curl -s https://codecov.io/bash)
workflows:
version: 2.1
ci:
jobs:
- build-all
- test:
codecov-upload: true
os:
- linux
language: go
go:
- 1.14.x
env:
matrix:
- GOTFLAGS="-race"
- GOTFLAGS="-race -tags=openssl"
cache:
directories:
- $GOPATH/pkg/mod
- $HOME/.cache/go-build
script:
- go build ./...
- travis_wait 30 go test -timeout 30m -v -race -coverprofile=coverage.txt -covermode=atomic ./...
after_success:
- bash <(curl -s https://codecov.io/bash)
notifications:
email: false
\ No newline at end of file
......@@ -8,9 +8,8 @@
</p>
<p align="left">
<a href="https://travis-ci.com/libp2p/go-libp2p-pubsub"><img src="https://travis-ci.com/libp2p/go-libp2p-pubsub.svg?branch=master"></a>
<a href="https://codecov.io/gh/libp2p/go-libp2p-pubsub"><img src="https://codecov.io/gh/libp2p/go-libp2p-pubsub/branch/master/graph/badge.svg"></a>
<a href="https://goreportcard.com/report/github.com/libp2p/go-libp2p-pubsub"><img src="https://goreportcard.com/badge/github.com/libp2p/go-libp2p-pubsub" /></a>
<a href="https://goreportcard.com/report/github.com/libp2p/go-libp2p-pubsub"><img src="https://goreportcard.com/badge/github.com/libp2p/go-libp2p-pubsub" /></a>
<a href="https://github.com/RichardLitt/standard-readme"><img src="https://img.shields.io/badge/readme%20style-standard-brightgreen.svg?style=flat-square" /></a>
<a href="https://godoc.org/github.com/libp2p/go-libp2p-pubsub"><img src="http://img.shields.io/badge/godoc-reference-5272B4.svg?style=flat-square" /></a>
<a href=""><img src="https://img.shields.io/badge/golang-%3E%3D1.14.0-orange.svg?style=flat-square" /></a>
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment