-
Notifications
You must be signed in to change notification settings - Fork 0
/
deploy-base.sh
executable file
·53 lines (46 loc) · 1.75 KB
/
deploy-base.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
41
42
43
44
45
46
47
48
49
50
51
52
53
#!/bin/bash
set -o xtrace
## Configuration
export PRIMARY_REGION="eu-central-1"
export SECONDARY_REGION="eu-west-1"
export ENV_NAME="base"
export APP_NAME="ghost"
export GITHUB_ORG="milashenko"
export REPOSITORY_NAME=ghost-aws-ha
## End of Configuration
ACCOUNT_ID=`aws sts get-caller-identity --query=Account --output=text`
# Cloudformation buckets
export PRIMARY_BUCKET_NAME="$ENV_NAME-$PRIMARY_REGION-templates"
aws s3 mb "s3://$PRIMARY_BUCKET_NAME" --region=$PRIMARY_REGION || true
export SECONDARY_BUCKET_NAME="$ENV_NAME-$SECONDARY_REGION-templates"
aws s3 mb "s3://$SECONDARY_BUCKET_NAME" --region=$SECONDARY_REGION || true
export GLOBAL_BUCKET_NAME="$ENV_NAME-us-east-1-templates"
aws s3 mb "s3://$GLOBAL_BUCKET_NAME" --region=us-east-1 || true
#### ECR
# Primary
sam deploy --stack-name="$APP_NAME-ecr" \
--parameter-overrides="AppName=\"$APP_NAME\"" \
--tags="env=$ENV_NAME" \
--capabilities="CAPABILITY_NAMED_IAM" \
--region=$PRIMARY_REGION \
--s3-bucket=$PRIMARY_BUCKET_NAME \
--no-fail-on-empty-changeset \
--template-file base.ecr.yaml || exit 2
# Secondary
sam deploy --stack-name="$APP_NAME-ecr" \
--parameter-overrides="AppName=\"$APP_NAME\"" \
--tags="env=$ENV_NAME" \
--capabilities="CAPABILITY_NAMED_IAM" \
--region=$SECONDARY_REGION \
--s3-bucket=$SECONDARY_BUCKET_NAME \
--no-fail-on-empty-changeset \
--template-file base.ecr.yaml || exit 2
# GitHub
sam deploy --stack-name="$APP_NAME-github" \
--parameter-overrides="GitHubOrg=\"$GITHUB_ORG\" RepositoryName=\"$REPOSITORY_NAME\" " \
--tags="env=$ENV_NAME" \
--capabilities="CAPABILITY_NAMED_IAM" \
--region=us-east-1 \
--s3-bucket=$GLOBAL_BUCKET_NAME \
--no-fail-on-empty-changeset \
--template-file base.github-oidc.yaml || exit 2