summaryrefslogtreecommitdiff
path: root/official-site-scripts/deploy.sh
blob: 32574e0c72173b3ca3b03ebd1fd72c49d3b0cdb6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
#!/usr/bin/env bash
set -euo pipefail

REPO_ROOT="$(cd "$(dirname "$0")/.." && pwd)"
[ -f "$REPO_ROOT/.env" ] && set -a && source "$REPO_ROOT/.env" && set +a

AWS_CLI="${AWS_CLI:-/tmp/awscli/aws/dist/aws}"
APP_ID="d33773t2lyrxkx"
BRANCH="main"
REGION="${AWS_DEFAULT_REGION:-ap-northeast-1}"

echo "Starting Amplify build: app=$APP_ID branch=$BRANCH"
JOB=$("$AWS_CLI" amplify start-job \
  --app-id "$APP_ID" \
  --branch-name "$BRANCH" \
  --job-type RELEASE \
  --region "$REGION" \
  --output json)

JOB_ID=$(echo "$JOB" | python3 -c "import json,sys; print(json.load(sys.stdin)['jobSummary']['jobId'])")
echo "Job started: $JOB_ID"
echo "Console: https://ap-northeast-1.console.aws.amazon.com/amplify/apps/$APP_ID/branches/$BRANCH/deployments/$JOB_ID"

echo "Waiting for build to complete..."
while true; do
  STATUS=$("$AWS_CLI" amplify get-job \
    --app-id "$APP_ID" \
    --branch-name "$BRANCH" \
    --job-id "$JOB_ID" \
    --region "$REGION" \
    --output json | python3 -c "import json,sys; print(json.load(sys.stdin)['job']['summary']['status'])")
  echo "  Status: $STATUS"
  if [[ "$STATUS" == "SUCCEED" ]]; then
    echo "Build succeeded! https://www.mosquit.one"
    break
  elif [[ "$STATUS" == "FAILED" || "$STATUS" == "CANCELLED" ]]; then
    echo "Build $STATUS"
    exit 1
  fi
  sleep 15
done