Skip to content

Commit a23a447

Browse files
authored
CI/CD with proper cache invalidation (#5)
1 parent 73008c8 commit a23a447

2 files changed

Lines changed: 59 additions & 41 deletions

File tree

.github/workflows/deploy-dev.yml

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -50,3 +50,12 @@ jobs:
5050
AWS_REGION: 'ap-south-1'
5151
SOURCE_DIR: 'build'
5252
DEST_DIR: 'build'
53+
54+
- name: Invalidate cache
55+
uses: chetan/invalidate-cloudfront-action@v1.2
56+
env:
57+
DISTRIBUTION: ${{ secrets.cloudfront_dist_dev }}
58+
PATHS: '/*'
59+
AWS_REGION: 'ap-south-1'
60+
AWS_ACCESS_KEY_ID: ${{ secrets.aws_access_key }}
61+
AWS_SECRET_ACCESS_KEY: ${{ secrets.aws_secret_key }}

.github/workflows/deploy-prod.yml

Lines changed: 50 additions & 41 deletions
Original file line numberDiff line numberDiff line change
@@ -9,44 +9,53 @@ jobs:
99
runs-on: ubuntu-latest
1010

1111
steps:
12-
- uses: actions/checkout@v2
13-
14-
- name: Write File
15-
uses: DamianReeves/write-file-action@v1.0
16-
with:
17-
path: '.env.local'
18-
contents: 'REACT_APP_API_ENDPOINT=http://api.cov2.in/cc/api/'
19-
write-mode: 'overwrite'
20-
21-
- name: Read file
22-
run: cat .env.local
23-
24-
- name: list files
25-
run: ls -l
26-
27-
- name: Yarn Install Dependencies
28-
uses: CultureHQ/actions-yarn@v1.0.1
29-
with:
30-
args: install
31-
32-
- name: npm run build
33-
run: npm run build
34-
35-
- name: Log npm errors
36-
if: failure()
37-
run: cat /home/runner/.npm/_logs/*
38-
39-
- name: List build directory
40-
run: ls -R build/
41-
42-
- name: Upload to S3
43-
uses: jakejarvis/s3-sync-action@v0.5.1
44-
with:
45-
args: --acl public-read --delete
46-
env:
47-
AWS_S3_BUCKET: 'control.covid-prod'
48-
AWS_ACCESS_KEY_ID: ${{ secrets.aws_access_key }}
49-
AWS_SECRET_ACCESS_KEY: ${{ secrets.aws_secret_key }}
50-
AWS_REGION: 'ap-south-1'
51-
SOURCE_DIR: 'build'
52-
DEST_DIR: 'build'
12+
- uses: actions/checkout@v2
13+
14+
- name: Write File
15+
uses: DamianReeves/write-file-action@v1.0
16+
with:
17+
path: '.env.local'
18+
contents: 'REACT_APP_API_ENDPOINT=http://api.cov2.in/cc/api/'
19+
write-mode: 'overwrite'
20+
21+
- name: Read file
22+
run: cat .env.local
23+
24+
- name: list files
25+
run: ls -l
26+
27+
- name: Yarn Install Dependencies
28+
uses: CultureHQ/actions-yarn@v1.0.1
29+
with:
30+
args: install
31+
32+
- name: npm run build
33+
run: npm run build
34+
35+
- name: Log npm errors
36+
if: failure()
37+
run: cat /home/runner/.npm/_logs/*
38+
39+
- name: List build directory
40+
run: ls -R build/
41+
42+
- name: Upload to S3
43+
uses: jakejarvis/s3-sync-action@v0.5.1
44+
with:
45+
args: --acl public-read --delete
46+
env:
47+
AWS_S3_BUCKET: 'control.covid-prod'
48+
AWS_ACCESS_KEY_ID: ${{ secrets.aws_access_key }}
49+
AWS_SECRET_ACCESS_KEY: ${{ secrets.aws_secret_key }}
50+
AWS_REGION: 'ap-south-1'
51+
SOURCE_DIR: 'build'
52+
DEST_DIR: 'build'
53+
54+
- name: Invalidate cache
55+
uses: chetan/invalidate-cloudfront-action@v1.2
56+
env:
57+
DISTRIBUTION: ${{ secrets.cloudfront_dist_prod }}
58+
PATHS: '/*'
59+
AWS_REGION: 'ap-south-1'
60+
AWS_ACCESS_KEY_ID: ${{ secrets.aws_access_key }}
61+
AWS_SECRET_ACCESS_KEY: ${{ secrets.aws_secret_key }}

0 commit comments

Comments
 (0)