build_image: image: docker:git services: - docker:dind script: - docker build -f docker/Dockerfile -t asia.gcr.io/linuxconfsydney/symposion_app:$CI_COMMIT_SHA . - docker build --build-arg CI_COMMIT_SHA=$CI_COMMIT_SHA -f docker/Dockerfile.dev -t asia.gcr.io/linuxconfsydney/symposion_app_dev:$CI_COMMIT_SHA . - docker login -u _json_key -p "$GOOGLE_KEY" https://asia.gcr.io - docker push asia.gcr.io/linuxconfsydney/symposion_app:$CI_COMMIT_SHA - docker push asia.gcr.io/linuxconfsydney/symposion_app_dev:$CI_COMMIT_SHA - docker tag asia.gcr.io/linuxconfsydney/symposion_app:$CI_COMMIT_SHA asia.gcr.io/linuxconfsydney/symposion_app:latest - docker push asia.gcr.io/linuxconfsydney/symposion_app:latest only: - master k8s-prod-deploy: image: google/cloud-sdk stage: deploy script: - echo "$GOOGLE_KEY" > key.json - gcloud auth activate-service-account --key-file key.json - gcloud config set compute/zone australia-southeast1-b - gcloud config set project linuxconfsydney - gcloud config set container/use_client_certificate True - gcloud container clusters get-credentials lca02 - kubectl --namespace=rego-prod set image deployment/symposion-app symposion-app=asia.gcr.io/linuxconfsydney/symposion_app:$CI_COMMIT_SHA when: manual only: - master