Merge pull request #182 from GDSC-DGU/refactor/#181 #182
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Deploy to S3 and Invalidate CloudFront | |
| on: | |
| push: | |
| branches: | |
| - main | |
| - develop | |
| jobs: | |
| deploy: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v3 | |
| - name: Install dependencies | |
| run: npm ci | |
| - name: Set deployment target based on branch | |
| id: set-env | |
| run: | | |
| if [[ "${{ github.ref }}" == "refs/heads/main" ]]; then | |
| echo "DEPLOY_PATH=prod" >> $GITHUB_ENV | |
| echo "DISTRIBUTION_ID=EN9WG0178MOSJ" >> $GITHUB_ENV | |
| else | |
| echo "DEPLOY_PATH=dev" >> $GITHUB_ENV | |
| echo "DISTRIBUTION_ID=E2BF2F2YWOZWPA" >> $GITHUB_ENV | |
| fi | |
| - name: Create .env file for Vite build | |
| run: | | |
| echo "VITE_API_BASE_URL=https://www.gamzadev.store" >> .env | |
| echo "VITE_LAMBDA_BASE_URL=https://r9kfurmq7g.execute-api.ap-northeast-2.amazonaws.com/prod" >> .env | |
| echo "VITE_GOOGLE_MAPS_API_KEY=${{ secrets.VITE_GOOGLE_MAPS_API_KEY }}" >> .env | |
| - name: Build project | |
| run: | | |
| set -e | |
| npm run build | |
| - name: Check dist contents | |
| run: ls -al ./dist | |
| - name: Upload to S3 subfolder | |
| uses: jakejarvis/[email protected] | |
| with: | |
| args: --delete | |
| env: | |
| AWS_S3_BUCKET: 2025-dgu-spring-festival-frontend | |
| AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }} | |
| AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }} | |
| AWS_REGION: ap-northeast-2 | |
| SOURCE_DIR: ./dist | |
| DEST_DIR: ${{ env.DEPLOY_PATH }} | |
| - name: Invalidate CloudFront cache | |
| uses: chetan/invalidate-cloudfront-action@v2 | |
| env: | |
| DISTRIBUTION: ${{ env.DISTRIBUTION_ID }} | |
| PATHS: "/*" | |
| AWS_REGION: ap-northeast-2 | |
| AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }} | |
| AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }} |