mirror of https://github.com/docker/docs.git
88 lines
2.5 KiB
YAML
88 lines
2.5 KiB
YAML
# Pony-up!
|
|
machine:
|
|
pre:
|
|
# Install gvm
|
|
- bash < <(curl -s -S -L https://raw.githubusercontent.com/moovweb/gvm/1.0.22/binscripts/gvm-installer)
|
|
# Upgrade docker
|
|
- sudo curl -L -o /usr/bin/docker 'https://s3-external-1.amazonaws.com/circle-downloads/docker-1.9.1-circleci'
|
|
- sudo chmod 0755 /usr/bin/docker
|
|
|
|
post:
|
|
# Install many go versions
|
|
- gvm install go1.6.1 -B --name=stable
|
|
# upgrade compose
|
|
- sudo pip install --upgrade docker-compose
|
|
|
|
services:
|
|
- docker
|
|
|
|
environment:
|
|
# Convenient shortcuts to "common" locations
|
|
CHECKOUT: /home/ubuntu/$CIRCLE_PROJECT_REPONAME
|
|
BASE_DIR: src/github.com/docker/notary
|
|
# Trick circle brainflat "no absolute path" behavior
|
|
BASE_STABLE: ../../../$HOME/.gvm/pkgsets/stable/global/$BASE_DIR
|
|
# Workaround Circle parsing dumb bugs and/or YAML wonkyness
|
|
CIRCLE_PAIN: "mode: set"
|
|
# Put the coverage profile somewhere codecov's script can find it
|
|
COVERPROFILE: coverage.out
|
|
|
|
hosts:
|
|
# Not used yet
|
|
fancy: 127.0.0.1
|
|
|
|
dependencies:
|
|
pre:
|
|
# Copy the code to the gopath of all go versions
|
|
- >
|
|
gvm use stable &&
|
|
mkdir -p "$(dirname $BASE_STABLE)" &&
|
|
cp -R "$CHECKOUT" "$BASE_STABLE"
|
|
|
|
override:
|
|
# don't use circleci's default dependency installation step of `go get -d -u ./...`
|
|
# since we already vendor everything; additionally install linting and misspell tools
|
|
- >
|
|
gvm use stable &&
|
|
go get github.com/golang/lint/golint &&
|
|
go get -u github.com/client9/misspell/cmd/misspell
|
|
|
|
test:
|
|
pre:
|
|
# Output the go versions we are going to test
|
|
- gvm use stable && go version
|
|
|
|
# CLEAN
|
|
- gvm use stable && make clean:
|
|
pwd: $BASE_STABLE
|
|
|
|
# FMT
|
|
- gvm use stable && make fmt:
|
|
pwd: $BASE_STABLE
|
|
|
|
# VET
|
|
- gvm use stable && make vet:
|
|
pwd: $BASE_STABLE
|
|
|
|
# LINT
|
|
- gvm use stable && make lint:
|
|
pwd: $BASE_STABLE
|
|
|
|
# MISSPELL
|
|
- gvm use stable && make misspell:
|
|
pwd: $BASE_STABLE
|
|
|
|
override:
|
|
# Test stable, and report
|
|
# hacking this to be parallel
|
|
- case $CIRCLE_NODE_INDEX in 0) gvm use stable && NOTARY_BUILDTAGS=pkcs11 make ci ;; 1) gvm use stable && NOTARY_BUILDTAGS=none make ci ;; 2) gvm use stable && make integration ;; esac:
|
|
parallel: true
|
|
timeout: 600
|
|
pwd: $BASE_STABLE
|
|
|
|
post:
|
|
# Report to codecov.io
|
|
- case $CIRCLE_NODE_INDEX in 0) bash <(curl -s https://codecov.io/bash) ;; 1) bash <(curl -s https://codecov.io/bash) ;; esac:
|
|
parallel: true
|
|
pwd: $BASE_STABLE
|