Skip to content

Commit

Permalink
Merge pull request #27 from mdeggies/add-circleci
Browse files Browse the repository at this point in the history
Add CircleCI & remove travis
  • Loading branch information
mwhooker committed Mar 6, 2021
2 parents 249b055 + e9c06a1 commit c7dd669
Show file tree
Hide file tree
Showing 2 changed files with 59 additions and 12 deletions.
59 changes: 59 additions & 0 deletions .circleci/config.yml
@@ -0,0 +1,59 @@
version: 2.1

references:
  images:
    go: &GOLANG_IMAGE circleci/golang:latest
  environments:
    tmp: &TEST_RESULTS_PATH /tmp/test-results # path to where test results are saved

# reusable 'executor' object for jobs
executors:
  go:
    docker:
      - image: *GOLANG_IMAGE
    environment:
      - TEST_RESULTS: *TEST_RESULTS_PATH

jobs:
  go-test:
    executor: go
    steps:
      - checkout
      - run: mkdir -p $TEST_RESULTS

      - restore_cache: # restore cache from dev-build job
          keys:
            - go-multierror-modcache-v1-{{ checksum "go.mod" }}

      - run: go mod download

      # Save go module cache if the go.mod file has changed
      - save_cache:
          key: go-multierror-modcache-v1-{{ checksum "go.mod" }}
          paths:
            - "/go/pkg/mod"

      # check go fmt output because it does not report non-zero when there are fmt changes
      - run:
          name: check go fmt
          command: |
            files=$(go fmt ./...)
            if [ -n "$files" ]; then
              echo "The following file(s) do not conform to go fmt:"
              echo "$files"
              exit 1
            fi
      # run go tests with gotestsum
      - run: |
          PACKAGE_NAMES=$(go list ./...)
          gotestsum --format=short-verbose --junitfile $TEST_RESULTS/gotestsum-report.xml -- $PACKAGE_NAMES
      - store_test_results:
          path: *TEST_RESULTS_PATH
      - store_artifacts:
          path: *TEST_RESULTS_PATH

workflows:
  version: 2
  test-and-build:
    jobs:
      - go-test
12 changes: 0 additions & 12 deletions .travis.yml

This file was deleted.

0 comments on commit c7dd669

Please sign in to comment.