#!/usr/bin/env bash

set -euo pipefail

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

if [[ -z ${SKIP_UP+guard} ]]; then
    ${ROOT}/hack/prepare-e2e.sh
fi

echo "> Run e2e"
providers=${PROVIDERS:-"aws:gcp"}
# colon to separate regions of multiple provider, comma to separate multiple regions of a provider.
regions=${REGIONS:-"us-west-2:us-west1"}

providerArr=(${providers//:/ })
regionArr=(${regions//:/ })

if [[ ${#providerArr[@]} -ne ${#regionArr[@]} ]]
then
    echo "providers do not match the regions"
    exit1
fi

for index in "${!providerArr[@]}";
do
    regionsPerProvider=${regionArr[$index]}

    regionPerProviderArr=(${regionsPerProvider//,/ })
    for region in ${regionPerProviderArr[@]};
    do
        ${ROOT}/hack/e2e.sh ${providerArr[$index]} ${region}
    done
done
