Newer
Older
Casey Kuhlman
committed
machine:
GOPATH: $HOME/.go_workspace
REPO: ${GOPATH}/src/github.com/hyperledger/burrow
GO15VENDOREXPERIMENT: 1
pre:
- curl -sSL https://s3.amazonaws.com/circle-downloads/install-circleci-docker.sh | bash -s -- 1.10.0
services:
- docker
Casey Kuhlman
committed
post:
- git config --global user.email "billings@monax.io"
Casey Kuhlman
committed
- git config --global user.name "Billings the Bot"
- rm -rf ${GOPATH%%:*}/src/github.com/hyperledger
- mkdir -p ${GOPATH%%:*}/src/github.com/hyperledger
- cp -r ${HOME}/${CIRCLE_PROJECT_REPONAME} ${GOPATH%%:*}/src/github.com/hyperledger/.
Casey Kuhlman
committed
override:
- sudo apt-get update && sudo apt-get install -y libgmp3-dev
- sudo apt-get install jq curl && go get github.com/Masterminds/glide
- cd $REPO && glide install
# Test the build target for burrow
- echo "Build target burrow..." && cd $REPO && go install ./cmd/burrow && burrow --help
# Test the build target for burrow-client
- echo "Build target burrow-client..." && cd $REPO && go install ./client/cmd/burrow-client && burrow-client --help
# We only wish to test our packages not vendored ones
- echo "Running unit tests..." && cd $REPO && glide novendor | xargs go test -tags integration
Benjamin Bollen
committed
# - echo "Running integration tests..." && cd $REPO && "tests/circle_test.sh" # | tee $CIRCLE_ARTIFACTS/output.log; test ${PIPESTATUS[0]} -eq 0"
Casey Kuhlman
committed
deployment:
branch: release-0.12
Casey Kuhlman
committed
commands:
- docker login -e $DOCKER_EMAIL -u $DOCKER_USER -p $DOCKER_PASS quay.io
Benjamin Bollen
committed
# build docker image and tag the image with the version
release-0.16:
branch: release-0.16
commands:
- docker login -e $DOCKER_EMAIL -u $DOCKER_USER -p $DOCKER_PASS quay.io
Benjamin Bollen
committed
# build docker image and tag the image with the version
- tests/build_tool.sh
develop:
branch: develop
commands:
- docker login -e $DOCKER_EMAIL -u $DOCKER_USER -p $DOCKER_PASS quay.io
# build docker image and tag the image with the version
- tests/build_tool.sh
- docker login -e $DOCKER_EMAIL -u $DOCKER_USER -p $DOCKER_PASS quay.io
Benjamin Bollen
committed
# build docker image and tag the image with ':latest'
# builds on master are considered immutable so we do not push the version
# tag to allow for hotfixes
- tests/build_tool.sh latest
Benjamin Bollen
committed
tagged-releases:
tag: /v[0-9]+(\.[0-9]+)*/
commands:
- docker login -e $DOCKER_EMAIL -u $DOCKER_USER -p $DOCKER_PASS quay.io
# build docker image and tag the image with the version;
# once the commit is tagged the docker image for this version tag is
# considered immutable.