forked from pulumi/docs
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathpreview.sh
executable file
·40 lines (31 loc) · 1.17 KB
/
preview.sh
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
#!/bin/bash
set -o errexit -o pipefail
cd "$(dirname "${BASH_SOURCE}")/.."
if [ -z ${1:-} ]; then
echo "Usage: $0 [ staging | production ]"
exit 1
fi
# Environment being updated (production, staging, etc.)
export ENVIRONMENT=${1}
# Each environment is running in a different AWS account, so we determine the
# credentials to use based on environment. Set in the Travis UI:
# https://travis-ci.com/pulumi/docs/settings
export ACCESS_KEY_ENV_VAR="AWS_ACCESS_KEY_ID_${ENVIRONMENT}"
export SECRET_KEY_ENV_VAR="AWS_SECRET_ACCESS_KEY_${ENVIRONMENT}"
export AWS_ACCESS_KEY_ID="${!ACCESS_KEY_ENV_VAR}"
export AWS_SECRET_ACCESS_KEY="${!SECRET_KEY_ENV_VAR}"
if [ -z "${AWS_ACCESS_KEY_ID:-}" ] || [ -z "${AWS_SECRET_ACCESS_KEY:-}" ]; then
echo "Skipping preview, no AWS credentials found."
exit 0
fi
echo "Using AWS Access KEY ID ${AWS_ACCESS_KEY_ID}"
cd ./infrastructure
# Sync dependencies and build the Pulumi program.
yarn install
yarn build
# Login, select the stack, and update.
export PULUMI_STACK_NAME="pulumi/pulumi.io-${ENVIRONMENT}"
# Remove once pulumi/pulumi/issues/1715 is fixed.
export PULUMI_PERSIST_PREVIEWS="1"
pulumi stack select ${PULUMI_STACK_NAME}
pulumi preview