52af6e973b
This adopts pattern used by Vault, where we split CircleCI yaml config into multiple files that get packed and translated to 2.0. This has two motivations: First, to ease translating config to CircleCI 2.0 so it can run on Enterprise private repository. Second and most importantly, it also adding Enterprise specific jobs in separate files with reduced config file merging conflict resolution.
40 lines
1,008 B
YAML
40 lines
1,008 B
YAML
executor: "<< parameters.executor >>"
|
|
parameters:
|
|
test_packages:
|
|
type: string
|
|
default: ""
|
|
exclude_packages:
|
|
type: string
|
|
default: ""
|
|
executor:
|
|
type: string
|
|
default: "go-machine-recent"
|
|
goarch:
|
|
type: string
|
|
default: "amd64"
|
|
environment:
|
|
GOTEST_PKGS_EXCLUDE: "<< parameters.exclude_packages >>"
|
|
GOTEST_PKGS: "<< parameters.test_packages >>"
|
|
GOTESTARCH: "<< parameters.goarch >>"
|
|
steps:
|
|
- checkout
|
|
- install-golang
|
|
- install-protoc
|
|
- install-consul
|
|
- install-vault
|
|
- run:
|
|
name: Install 32bit gcc libs
|
|
command: |
|
|
if [ ! -z $GOTESTARCH ] && [ $GOTESTARCH == "386" ]; then
|
|
sudo apt-get update
|
|
sudo apt-get install -y gcc-multilib
|
|
else
|
|
echo "Skipping 32bit lib installation while building for not 386"
|
|
fi
|
|
- run: PATH="$GOPATH/bin:/usr/local/go/bin:$PATH" make bootstrap
|
|
- run-tests
|
|
- store_test_results:
|
|
path: /tmp/test-reports
|
|
- store_artifacts:
|
|
path: /tmp/test-reports
|