Forked from adilsoncarvalho/bitbucket-pipelines.yml
Created
October 24, 2017 14:58
-
-
Save loooping-old/0394d59c572472a0699daeff938c8813 to your computer and use it in GitHub Desktop.
Bitbucket Pipelines deployment to a Google Container Engine configuration
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
--- | |
options: | |
docker: true | |
pipelines: | |
branches: | |
master: | |
- step: | |
script: | |
# Installing gcloud | |
- curl -o /tmp/google-cloud-sdk.tar.gz https://dl.google.com/dl/cloudsdk/channels/rapid/downloads/google-cloud-sdk-161.0.0-linux-x86_64.tar.gz | |
- tar -xvf /tmp/google-cloud-sdk.tar.gz -C /tmp/ | |
- /tmp/google-cloud-sdk/install.sh -q | |
- source /tmp/google-cloud-sdk/path.bash.inc | |
# Installing kubectl | |
- gcloud components install kubectl -q | |
# Authentication | |
- echo $GCLOUD_API_KEYFILE | base64 --decode --ignore-garbage > ./gcloud-api-key.json | |
- gcloud auth activate-service-account --key-file gcloud-api-key.json | |
- gcloud config set project $GCLOUD_PROJECT | |
- gcloud container clusters get-credentials $GCLOUD_CLUSTER --zone=$GCLOUD_ZONE | |
# Building images | |
- docker build . -t us.gcr.io/$GCLOUD_PROJECT/$PROJECT_NAME:$BITBUCKET_COMMIT | |
# Pushing SHA1 image | |
- gcloud docker -- push us.gcr.io/$GCLOUD_PROJECT/$PROJECT_NAME:$BITBUCKET_COMMIT | |
# Pushing latest image | |
- docker tag us.gcr.io/$GCLOUD_PROJECT/$PROJECT_NAME:$BITBUCKET_COMMIT us.gcr.io/$GCLOUD_PROJECT/$PROJECT_NAME:latest | |
- gcloud docker -- push us.gcr.io/$GCLOUD_PROJECT/$PROJECT_NAME:latest | |
# Deploy the image | |
- kubectl set image deployment <deployment-name> <container-name>=us.gcr.io/$GCLOUD_PROJECT/$PROJECT_NAME:$BITBUCKET_COMMIT --record --namespace=<namespace> |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment