#!/usr/bin/env bash

set -x
set -euo pipefail

ROOT=$(cd $(dirname "${BASH_SOURCE[0]}") && pwd)

remote_config=${CONFIG_PATH}
local_config=/tmp/base-config.yaml
bucket_name=${remote_config#s3://}
bucket_name=${bucket_name%%/*}
output_bucket_region=$(aws s3api get-bucket-location --bucket=$bucket_name --query="LocationConstraint" \
  --region=us-west-2 --output=text --no-cli-pager)
aws s3 cp ${remote_config} ${local_config} --region=$output_bucket_region

cloud_provider=$(yq '.cloudProvider' "${local_config}")
region=$(yq '.region' "${local_config}")
logical_region_name=$(yq '.name' "${local_config}")
env=$(yq '.env' "${local_config}")
cluster_name=$(yq '.k8s.name' "${local_config}")
dataplane_accounts=$(yq -ojson '.aws.dataplaneAccounts' "${local_config}" | jq -r '.[]')

for acct in ${dataplane_accounts[@]}; do
  aws cloudformation delete-stack \
    --profile $acct \
    --region $region \
    --stack-name auto-deploy-$cluster_name-iam-dataplane
  aws cloudformation wait stack-delete-complete \
    --profile $acct \
    --region $region \
    --stack-name auto-deploy-$cluster_name-iam-dataplane
done

aws cloudformation delete-stack \
  --region $region \
  --stack-name auto-deploy-$cluster_name-iam
aws cloudformation wait stack-delete-complete \
  --region $region \
  --stack-name auto-deploy-$cluster_name-iam
