diff --git a/.circleci/config.yml b/.circleci/config.yml new file mode 100644 index 0000000..5f3c63e --- /dev/null +++ b/.circleci/config.yml @@ -0,0 +1,37 @@ +# Use the latest 2.1 version of CircleCI pipeline process engine. +# See: https://circleci.com/docs/configuration-reference +version: 2.1 + +orbs: + go: circleci/go@1.7.3 + +# Define a job to be invoked later in a workflow. +# See: https://circleci.com/docs/configuration-reference/#jobs +jobs: + build-and-test: + executor: + name: go/default # Use the default executor from the orb + tag: '1.19.2' # Specify a version tag + # Add steps to the job + # See: https://circleci.com/docs/configuration-reference/#steps + steps: + - checkout + - go/load-cache # Load cached Go modules. + - go/mod-download # Run 'go mod download'. + - go/save-cache # Save Go modules to cache. + - run: + name: "before install" + command: go get -v github.com/mattn/goveralls + - run: + name: "setup" + command: make setup + - run: + name: "build and test" + command: make build test-race check bench-race coveralls + +# Orchestrate jobs using workflows +# See: https://circleci.com/docs/configuration-reference/#workflows +workflows: + kube2iam-workflow: + jobs: + - build-and-test