# Provide instructions for google Cloud Build to auto-build flutter
# dashboard to flutter-dashboard project. Auto-build will be triggered
# by daily schedule on `main` branch.
#
# The auto-build will be skipped if no new commits since last deployment.

steps:
  # Build dashboard.
  - name: gcr.io/$PROJECT_ID/flutter
    entrypoint: '/bin/bash'
    args: ['cloud_build/dashboard_build.sh']

  # Deploy a new version to google cloud.
  - name: gcr.io/cloud-builders/gcloud
    entrypoint: '/bin/bash'
    args:  
      - '-c'
      - |-
        gcloud config set project $PROJECT_ID
        latest_version=$(gcloud app versions list --hide-no-traffic --format 'value(version.id)')
        if [ "$latest_version" = "version-$SHORT_SHA" ]; then
          echo "No updates since last deployment."
        else
          bash cloud_build/deploy_app_dart.sh $PROJECT_ID $SHORT_SHA $_GAE_PROMOTE
        fi

timeout: 1200s
