fix(ci): move deploy instructions to build job

https://circleci.com/docs/2.0/configuration-reference/#deploy
parent 720c9bf5
...@@ -9,38 +9,17 @@ jobs: ...@@ -9,38 +9,17 @@ jobs:
PROJECT_NAME: "kubernetes-helm" PROJECT_NAME: "kubernetes-helm"
steps: steps:
- checkout - checkout
- setup_remote_docker
- run: - run:
name: install dependencies name: install dependencies
command: make bootstrap command: make bootstrap
- run:
name: go env
command: go env
- save_cache: - save_cache:
key: vendor-{{ checksum "glide.yaml" }}-{{ checksum "glide.lock" }} key: vendor-{{ checksum "glide.yaml" }}-{{ checksum "glide.lock" }}
paths: paths:
- vendor - vendor
- run: - run:
name: test name: test
command: ./scripts/ci.sh command: .circleci/test.sh
deployment:
working_directory: /go/src/k8s.io/helm
docker:
- image: golang:1.8
environment:
PROJECT_NAME: "kubernetes-helm"
filters:
tags:
only: /.*/
branches:
only: master
steps:
- checkout
- restore_cache:
keys:
- vendor-{{ checksum "glide.yaml" }}-{{ checksum "glide.lock" }}
- run:
name: go env
command: go env
- deploy: - deploy:
name: deploy name: deploy
command: ./scripts/ci/deploy.sh command: .circleci/deploy.sh
...@@ -15,6 +15,11 @@ ...@@ -15,6 +15,11 @@
# limitations under the License. # limitations under the License.
set -euo pipefail set -euo pipefail
# Skip on pull request builds
if [[ -n "${CIRCLE_PR_NUMBER:-}" ]]; then
exit
fi
: ${GCLOUD_SERVICE_KEY:?"GCLOUD_SERVICE_KEY environment variable is not set"} : ${GCLOUD_SERVICE_KEY:?"GCLOUD_SERVICE_KEY environment variable is not set"}
: ${PROJECT_NAME:?"PROJECT_NAME environment variable is not set"} : ${PROJECT_NAME:?"PROJECT_NAME environment variable is not set"}
...@@ -27,13 +32,21 @@ else ...@@ -27,13 +32,21 @@ else
exit 1 exit 1
fi fi
echo "Updating gcloud components" echo "Install docker client"
sudo /opt/google-cloud-sdk/bin/gcloud --quiet components update VER="17.03.0-ce"
curl -L -o /tmp/docker-$VER.tgz https://get.docker.com/builds/Linux/x86_64/docker-$VER.tgz
tar -xz -C /tmp -f /tmp/docker-$VER.tgz
mv /tmp/docker/* /usr/bin
echo "Install gcloud components"
export CLOUDSDK_CORE_DISABLE_PROMPTS=1
curl https://sdk.cloud.google.com | bash
${HOME}/google-cloud-sdk/bin/gcloud --quiet components update
echo "Configuring gcloud authentication" echo "Configuring gcloud authentication"
echo "${GCLOUD_SERVICE_KEY}" | base64 --decode > "${HOME}/gcloud-service-key.json" echo "${GCLOUD_SERVICE_KEY}" | base64 --decode > "${HOME}/gcloud-service-key.json"
sudo /opt/google-cloud-sdk/bin/gcloud auth activate-service-account --key-file "${HOME}/gcloud-service-key.json" ${HOME}/google-cloud-sdk/bin/gcloud auth activate-service-account --key-file "${HOME}/gcloud-service-key.json"
sudo /opt/google-cloud-sdk/bin/gcloud config set project "${PROJECT_NAME}" ${HOME}/google-cloud-sdk/bin/gcloud config set project "${PROJECT_NAME}"
docker login -e 1234@5678.com -u _json_key -p "$(cat ${HOME}/gcloud-service-key.json)" https://gcr.io docker login -e 1234@5678.com -u _json_key -p "$(cat ${HOME}/gcloud-service-key.json)" https://gcr.io
echo "Building the tiller image" echo "Building the tiller image"
...@@ -47,4 +60,4 @@ make build-cross ...@@ -47,4 +60,4 @@ make build-cross
make dist checksum VERSION="${VERSION}" make dist checksum VERSION="${VERSION}"
echo "Pushing binaries to gs bucket" echo "Pushing binaries to gs bucket"
sudo /opt/google-cloud-sdk/bin/gsutil cp ./_dist/* "gs://${PROJECT_NAME}" ${HOME}/google-cloud-sdk/bin/gsutil cp ./_dist/* "gs://${PROJECT_NAME}"
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment