Skip to content

Release v1.0.9 (#133) #33

Release v1.0.9 (#133)

Release v1.0.9 (#133) #33

Workflow file for this run

name: Deploy to Amazon s3
on:
push:
branches: ['main']
env:
AWS_REGION: ap-northeast-2
S3_BUCKET_NAME: gdsc-knu.com
permissions:
contents: read
jobs:
deploy:
name: Deploy
runs-on: ubuntu-latest
steps:
- name: Checkout source code.
uses: actions/checkout@master
- name: Cache node modules
uses: actions/cache@v4
with:
path: node_modules
key: ${{ runner.OS }}-build-${{ hashFiles('**/package-lock.json') }}
restore-keys: |
${{ runner.OS }}-build-
${{ runner.OS }}-
- name: Install pnpm
run: |
npm install -g pnpm
- name: Create .env file
run: |
echo "VITE_APP_GA_TRACKING_ID=${{ secrets.VITE_APP_GA_TRACKING_ID }}" >> .env
echo "VITE_APP_BASE_URL=${{ secrets.VITE_APP_BASE_URL }}" >> .env
echo "VITE_APP_GOOGLE_AUTH_CLIENT_ID=${{ secrets.VITE_APP_GOOGLE_AUTH_CLIENT_ID }}" >> .env
echo "VITE_APP_GOOGLE_AUTH_REDIRECT_URI=${{ secrets.VITE_APP_GOOGLE_AUTH_REDIRECT_URI }}" >> .env
- name: Install Dependencies
run: pnpm install --no-frozen-lockfile --force
- name: Lint Code
run: pnpm lint
- name: Build
run: CI='' pnpm run build
- name: Configure AWS credentials
uses: aws-actions/configure-aws-credentials@v4
with:
aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
aws-region: ${{ env.AWS_REGION }}
- name: Upload to AWS S3
run: |
aws s3 cp \
--recursive \
--region ap-northeast-2 \
./dist s3://${{env.S3_BUCKET_NAME}}
- name: Invalidate CloudFront Cache
run:
aws cloudfront create-invalidation --distribution-id ${{secrets.AWS_DISTRIBUTION_ID }} --paths "/*"