open-nomad/.circleci/config/workflows/build-test.yml
Mahmood Ali 4f6a2cf65c ci: build darwin on CI
build darwin binaries in CI as a basic check.  Protects against
cross compile issues.
2020-03-23 13:27:24 -04:00

76 lines
2.1 KiB
YAML

jobs:
- build-binaries:
# almost always build binaries as they may be needed
# for e2e tests
filters:
branches:
ignore:
- stable-website
- /^.-ui\b.*/
- lint-go:
filters: &backend_branches_filter
branches:
ignore:
- /^.-ui\b.*/
- /^docs-.*/
- stable-website
- build-darwin-binaries:
# almost always build binaries as they may be needed
# for e2e tests
filters: *backend_branches_filter
- test-machine:
name: "test-client"
test_packages: "./client/..."
filters: *backend_branches_filter
- test-machine:
name: "test-nomad"
test_packages: "./nomad/..."
filters: *backend_branches_filter
- test-machine:
# API Tests run in a VM rather than container due to the FS tests
# requiring `mount` priviliges.
name: "test-api"
test_packages: "./api/..."
filters: *backend_branches_filter
- test-container:
name: "test-devices"
test_packages: "./devices/..."
filters: *backend_branches_filter
- test-machine:
name: "test-other"
exclude_packages: "./api|./client|./drivers/docker|./drivers/exec|./drivers/shared/executor|./nomad|./devices"
filters: *backend_branches_filter
- test-machine:
name: "test-docker"
test_packages: "./drivers/docker"
# docker is misbehaving in docker-machine-recent image
# and we get unexpected failures
# e.g. https://circleci.com/gh/hashicorp/nomad/3854
executor: go-machine
filters: *backend_branches_filter
- test-machine:
name: "test-exec"
test_packages: "./drivers/exec"
filters: *backend_branches_filter
- test-machine:
name: "test-shared-exec"
test_packages: "./drivers/shared/executor"
filters: *backend_branches_filter
- test-machine:
name: "test-32bit"
# Currently we only explicitly test fingerprinting on 32bit
# architectures.
test_packages: "./client/fingerprint"
goarch: "386"
filters: *backend_branches_filter
- test-e2e:
filters: *backend_branches_filter
- test-ui:
filters:
branches:
ignore:
- stable-website
- /^docs-.*/