#!/usr/bin/env bash

set -o errexit
set -o nounset
set -o pipefail

ROOT=$(cd $(dirname "${BASH_SOURCE[0]}")/../../..; pwd -P)

source $ROOT/hack/lib/vars.sh

PULUMI=${PULUMI:-"$ROOT/bin/pulumi"}

lib::pulumi::util::ensure_stack() {
    local stack=${1}
    local dir=${2}

    $PULUMI stack select ${stack} \
        --create \
        -C ${dir}

    local file=${dir}/Pulumi.${stack}.yaml
    if [ -f "${file}" ] ; then
        rm "$file"
    fi
}

lib::pulumi::util::login() {
    local type=${1:-"local"}
    case $type in
    cloud)
        $PULUMI login https://api.pulumi.com
        ;;
    local)
        export PULUMI_CONFIG_PASSPHRASE=
        $PULUMI login file://${ROOT}
        ;;
    *)
        echo "unknown type ${type} in pulumi::e2e::deploy::login"
        exit -1
        ;;
    esac
}

