Skip to content

24.12.03 (#63)

24.12.03 (#63) #26

Workflow file for this run

# [Reference] https://velog.io/@ken1204/AWS-S3-CloudFront-Route53-GitHub-Action%EC%9D%84-%EC%9D%B4%EC%9A%A9%ED%95%9C-React-App-%EB%B0%B0%ED%8F%AC-%EA%B3%BC%EC%A0%95
name: Deploy to pocket-prompt.com
on:
push:
branches:
- main
jobs:
Deploy:
runs-on: ubuntu-latest
env:
SENTRY_AUTH_TOKEN: ${{ secrets.SENTRY_AUTH_TOKEN }}
steps:
- name: Checkout source code
uses: actions/checkout@v2
with:
submodules: recursive
token: ${{ secrets.ACTION_TOKEN }}
- name: Cache node modules
uses: actions/cache@v3
with:
path: node_modules
key: ${{ runner.OS }}-build-${{ hashFiles('**/yarn.lock') }}
restore-keys: |
${{ runner.OS }}-build-
${{ runner.OS }}-
- name: Install Dependencies
if: steps.cache.outputs.cache-hit != 'true'
run: yarn install
- name: Build
run: yarn build
- name: Configure AWS Credentials
uses: aws-actions/configure-aws-credentials@v2
with:
aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
aws-region: ${{ secrets.AWS_REGION }}
- name: Deploy to S3
run: aws s3 sync ./dist s3://${{ secrets.AWS_BUCKET_NAME }} --delete
- name: Invalidate CloudFront Cache
run: aws cloudfront create-invalidation --distribution-id ${{ secrets.AWS_DISTRIBUTION_ID }} --paths "/*"