machine: services: - docker environment: IMAGE_NAME: drupal DOCKER_PROJECT: bitnami GCLOUD_PROJECT: bitnami-containers dependencies: override: - docker info - gcloud version - docker pull $DOCKER_PROJECT/$IMAGE_NAME:development || true test: override: - docker build --rm=false -t $DOCKER_PROJECT/$IMAGE_NAME:$CIRCLE_BUILD_NUM . deployment: development: branch: master commands: - > if [ -n $DOCKER_PASS ]; then docker login -e $DOCKER_EMAIL -u $DOCKER_USER -p $DOCKER_PASS docker build --rm=false -t $DOCKER_PROJECT/$IMAGE_NAME:development . docker push $DOCKER_PROJECT/$IMAGE_NAME:development fi - > if [ -n $GCLOUD_SERVICE_KEY ]; then echo $GCLOUD_SERVICE_KEY | base64 --decode > ${HOME}/gcloud-service-key.json gcloud auth activate-service-account --key-file ${HOME}/gcloud-service-key.json gcloud config set project $GCLOUD_PROJECT docker tag $DOCKER_PROJECT/$IMAGE_NAME:development gcr.io/$GCLOUD_PROJECT/$IMAGE_NAME:development gcloud docker -- push gcr.io/$GCLOUD_PROJECT/$IMAGE_NAME:development fi release: tag: /^[0-9]+(\.[0-9]+)*-r[0-9]*/ commands: - > if [ -n $DOCKER_PASS ]; then docker login -e $DOCKER_EMAIL -u $DOCKER_USER -p $DOCKER_PASS docker build --rm=false -t $DOCKER_PROJECT/$IMAGE_NAME:$CIRCLE_TAG . docker tag $DOCKER_PROJECT/$IMAGE_NAME:$CIRCLE_TAG $DOCKER_PROJECT/$IMAGE_NAME:latest docker push $DOCKER_PROJECT/$IMAGE_NAME:$CIRCLE_TAG docker push $DOCKER_PROJECT/$IMAGE_NAME:latest fi - > if [ -n $GCLOUD_SERVICE_KEY ]; then echo $GCLOUD_SERVICE_KEY | base64 --decode > ${HOME}/gcloud-service-key.json gcloud auth activate-service-account --key-file ${HOME}/gcloud-service-key.json gcloud config set project $GCLOUD_PROJECT docker tag $DOCKER_PROJECT/$IMAGE_NAME:$CIRCLE_TAG gcr.io/$GCLOUD_PROJECT/$IMAGE_NAME:$CIRCLE_TAG docker tag $DOCKER_PROJECT/$IMAGE_NAME:$CIRCLE_TAG gcr.io/$GCLOUD_PROJECT/$IMAGE_NAME:latest gcloud docker -- push gcr.io/$GCLOUD_PROJECT/$IMAGE_NAME:$CIRCLE_TAG gcloud docker -- push gcr.io/$GCLOUD_PROJECT/$IMAGE_NAME:latest fi