mirror of https://github.com/helm/helm
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
60 lines
1.5 KiB
60 lines
1.5 KiB
machine:
|
|
pre:
|
|
- curl -sSL https://s3.amazonaws.com/circle-downloads/install-circleci-docker.sh | bash -s -- 1.10.0
|
|
|
|
environment:
|
|
GOVERSION: "1.6.3"
|
|
GOPATH: "${HOME}/.go_workspace"
|
|
WORKDIR: "${GOPATH}/src/k8s.io/helm"
|
|
|
|
services:
|
|
- docker
|
|
|
|
dependencies:
|
|
pre:
|
|
# clean up gopath
|
|
- sudo rm -rf /usr/local/go;
|
|
- rm -rf "$GOPATH";
|
|
|
|
override:
|
|
# install go
|
|
- wget "https://storage.googleapis.com/golang/go${GOVERSION}.linux-amd64.tar.gz"
|
|
- sudo tar -C /usr/local -xzf "go${GOVERSION}.linux-amd64.tar.gz"
|
|
|
|
# move repository to the canonical import path
|
|
- mkdir -p "$(dirname ${WORKDIR})"
|
|
- cp -R "${HOME}/helm" "${WORKDIR}"
|
|
|
|
# install dependencies
|
|
- cd "${WORKDIR}" && make bootstrap
|
|
|
|
# docker login to gcr.io
|
|
- echo $GCLOUD_SERVICE_KEY | base64 --decode > ${HOME}/gcloud-service-key.json
|
|
- docker login -e 1234@5678.com -u _json_key -p "$(cat ${HOME}/gcloud-service-key.json)" https://gcr.io
|
|
|
|
post:
|
|
# check your work
|
|
- go env
|
|
|
|
test:
|
|
override:
|
|
# run tests in parallel
|
|
- cd "${WORKDIR}" && ./scripts/ci.sh:
|
|
parallel: true
|
|
|
|
deployment:
|
|
|
|
# build and push an immutable tagged image on a tagged relase
|
|
release:
|
|
tag: /^v[0-9]+\.{3}.*$/
|
|
commands:
|
|
- make docker-build VERSION="${CIRCLE_TAG}"
|
|
- docker push "gcr.io/kubernetes-helm/tiller:${CIRCLE_TAG}"
|
|
|
|
# build and upload a canary image on a successful master build
|
|
canary:
|
|
branch: master
|
|
commands:
|
|
- make docker-build
|
|
- docker push gcr.io/kubernetes-helm/tiller:canary
|