-
Notifications
You must be signed in to change notification settings - Fork 9
65 lines (57 loc) · 2.41 KB
/
sync-synapse-templates.yml
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
54
55
56
57
58
59
60
61
62
63
64
65
name: Sync Matrix Synapse Email Templates
on:
push:
branches: [main]
paths:
- "packages/matrix/docker/synapse/templates/**"
workflow_dispatch:
inputs:
environment:
required: true
description: Target environment
default: staging
permissions:
contents: read
id-token: write
jobs:
sync:
name: sync
runs-on: ubuntu-latest
concurrency: sync-synapse-templates-${{ inputs.environment || 'staging' }}
steps:
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # 4.2.2
- name: Set up env
env:
INPUT_ENVIRONMENT: ${{ inputs.environment || 'staging' }}
run: |
echo "AWS_REGION=us-east-1" >> $GITHUB_ENV
if [ "$INPUT_ENVIRONMENT" = "production" ]; then
echo "AWS_ROLE_ARN=arn:aws:iam::120317779495:role/github-synapse" >> $GITHUB_ENV
echo "AWS_S3_BUCKET=cardstack-matrix-synapse-production" >> $GITHUB_ENV
echo "AWS_ECS_CLUSTER=production" >> $GITHUB_ENV
echo "AWS_ECS_SERVICE=synapse-production" >> $GITHUB_ENV
echo "HOST_DOMAIN=app.boxel.ai" >> $GITHUB_ENV
elif [ "$INPUT_ENVIRONMENT" = "staging" ]; then
echo "AWS_ROLE_ARN=arn:aws:iam::680542703984:role/github-synapse" >> $GITHUB_ENV
echo "AWS_S3_BUCKET=cardstack-matrix-synapse-staging" >> $GITHUB_ENV
echo "AWS_ECS_CLUSTER=staging" >> $GITHUB_ENV
echo "AWS_ECS_SERVICE=synapse-staging" >> $GITHUB_ENV
echo "HOST_DOMAIN=realms-staging.stack.cards" >> $GITHUB_ENV
else
echo "unrecognized environment"
exit 1;
fi
- name: Configure AWS credentials
uses: aws-actions/configure-aws-credentials@ececac1a45f3b08a01d2dd070d28d111c5fe6722 # 4.1.0
with:
role-to-assume: ${{ env.AWS_ROLE_ARN }}
aws-region: us-east-1
- name: Replace URL in registration success template
run: |
sed -i "s/http:\/\/localhost:4200/https:\/\/${{ env.HOST_DOMAIN }}/" packages/matrix/docker/synapse/templates/registration_success.html
- name: S3 Sync
run: |
aws s3 sync packages/matrix/docker/synapse/templates s3://${{ env.AWS_S3_BUCKET }}/templates
- name: Restart Synapse ECS Service
run: |
aws ecs update-service --cluster ${{ env.AWS_ECS_CLUSTER }} --service ${{ env.AWS_ECS_SERVICE }} --force-new-deployment