下記のようにgoogle/cloud-sdkイメージを使用して「initialize gcloud」内のような形でgcloudの設定を行う。
quietオプションがないとインタラクティブになるので注意。
version: 2
jobs:
deploy_production:
docker:
- image: google/cloud-sdk
steps:
- checkout
- run:
name: initialize gcloud
command: |
echo $GCLOUD_SERVICE_KEY | gcloud auth activate-service-account --key-file=-
gcloud --quiet config set project ${GOOGLE_PROJECT_ID}
gcloud --quiet config set compute/zone ${GOOGLE_COMPUTE_ZONE}
- run:
name: deploy production
command: |
curl -sL https://deb.nodesource.com/setup_10.x | bash -
apt-get install -y nodejs
npm i
npm run build
gcloud app deploy --quiet --project=hogehoge prod-app.yaml