69 lines
1.8 KiB
YAML
69 lines
1.8 KiB
YAML
version: 2.1
|
|
orbs:
|
|
go: circleci/go@0.2.0
|
|
prometheus: prometheus/prometheus@0.11.0
|
|
jobs:
|
|
test:
|
|
parameters:
|
|
go_version:
|
|
type: string
|
|
run_style_and_unused:
|
|
type: boolean
|
|
default: false
|
|
run_lint:
|
|
type: boolean
|
|
default: false
|
|
use_gomod_cache:
|
|
type: boolean
|
|
default: true
|
|
docker:
|
|
- image: circleci/golang:<< parameters.go_version >>
|
|
working_directory: /go/src/github.com/prometheus/client_golang
|
|
steps:
|
|
- checkout
|
|
- when:
|
|
condition: << parameters.use_gomod_cache >>
|
|
steps:
|
|
- go/load-cache:
|
|
key: v1-go<< parameters.go_version >>
|
|
- run: make check_license test
|
|
- when:
|
|
condition: << parameters.run_lint >>
|
|
steps:
|
|
- run: make lint
|
|
- when:
|
|
condition: << parameters.run_style_and_unused >>
|
|
steps:
|
|
- run: make style unused
|
|
- when:
|
|
condition: << parameters.use_gomod_cache >>
|
|
steps:
|
|
- go/save-cache:
|
|
key: v1-go<< parameters.go_version >>
|
|
- store_test_results:
|
|
path: test-results
|
|
workflows:
|
|
version: 2
|
|
client_golang:
|
|
jobs:
|
|
# Refer to README.md for the currently supported versions.
|
|
- test:
|
|
name: go-1-13
|
|
go_version: "1.13"
|
|
run_lint: true
|
|
- test:
|
|
name: go-1-14
|
|
go_version: "1.14"
|
|
run_lint: true
|
|
- test:
|
|
name: go-1-15
|
|
go_version: "1.15"
|
|
run_lint: true
|
|
- test:
|
|
name: go-1-16
|
|
go_version: "1.16"
|
|
run_lint: true
|
|
# Style and unused/missing packages are only checked against
|
|
# the latest supported Go version.
|
|
run_style_and_unused: true
|