forked from pulumi/docs
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathupdate.sh
executable file
·39 lines (30 loc) · 1.11 KB
/
update.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
#!/bin/bash
set -o nounset -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 "Error: No AWS credentials found."
exit 1
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}"
pulumi login
pulumi stack select ${PULUMI_STACK_NAME}
pulumi update --yes