version: 2.1 references: # environment specific references - aim to avoid conflicts go-machine-image: &go_machine_image circleci/classic:201808-01 go-machine-recent-image: &go_machine_recent_image ubuntu-1604:201903-01 # common references common_envs: &common_envs GOMAXPROCS: 1 NOMAD_SLOW_TEST: 1 GOTESTSUM_JUNITFILE: /tmp/test-reports/results.xml # disable implicit git paging. CircleCI runs commands with in a tty # making git assume it's an interactive session. PAGER: cat GIT_PAGER: cat executors: go: working_directory: /go/src/github.com/hashicorp/nomad docker: - image: golang:1.14 environment: <<: *common_envs GOPATH: /go go-machine: working_directory: ~/go/src/github.com/hashicorp/nomad machine: image: *go_machine_image environment: &machine_env <<: *common_envs GOPATH: /home/circleci/go GOLANG_VERSION: 1.14 # uses a more recent image with unattended upgrades disabled properly # but seems to break docker builds go-machine-recent: working_directory: ~/go/src/github.com/hashicorp/nomad machine: image: *go_machine_recent_image environment: *machine_env