[CICD] deploy.yml 수정 #9
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: React 웹 CI/CD to S3 and CloudFront | |
| # main 브랜치에 푸시될 때 워크플로우 실행 | |
| on: | |
| push: | |
| branches: [ "main" ] | |
| jobs: | |
| build-and-deploy: | |
| # 작업 실행 환경 | |
| runs-on: ubuntu-latest | |
| steps: | |
| # 1. 소스 코드 체크아웃 | |
| - name: 소스 코드 체크아웃 | |
| uses: actions/checkout@v4 | |
| # 2. Node.js 설치 (Flutter SDK 대신 Node.js 설치) | |
| - name: Node.js 설치 | |
| uses: actions/setup-node@v4 | |
| with: | |
| node-version: '20' # 프로젝트에 맞는 Node.js 버전 사용 | |
| # 3. React 의존성 설치 (Flutter pub get 대신 npm ci) | |
| - name: React 의존성 설치 | |
| run: npm ci # 'npm install'보다 빠르고 일관된 CI용 명령어 | |
| # 4. .env 파일 생성 | |
| - name: .env 파일 생성 | |
| run: | | |
| echo "VITE_KAKAO_REST_API_KEY=${{ secrets.VITE_KAKAO_REST_API_KEY }}" >> .env | |
| echo "VITE_KAKAO_SERVER_REDIRECT_URI=${{ secrets.VITE_KAKAO_SERVER_REDIRECT_URI }}" >> .env | |
| echo "VITE_KAKAO_REDIRECT_URI=${{ secrets.VITE_KAKAO_REDIRECT_URI }}" >> .env | |
| echo "VITE_API_FITFIT=${{ secrets.VITE_API_FITFIT }}" >> .env | |
| # 5. React 웹 빌드 (Flutter build 대신 npm run build) | |
| - name: React 웹 빌드 | |
| run: npm run build | |
| # 6. AWS 자격 증명 설정 (이전과 동일) | |
| - name: AWS 자격 증명 설정 | |
| uses: aws-actions/configure-aws-credentials@v4 | |
| with: | |
| aws-access-key-id: AKIAU3XHQYLTYOFDMQH5 | |
| aws-secret-access-key: 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 | |
| aws-region: ap-northeast-2 | |
| # 7. S3 버킷에 빌드 결과물 업로드 (경로 수정) | |
| - name: S3 버킷에 빌드 결과물 업로드 | |
| # React는 'dist' 폴더에 결과물 생성 | |
| run: aws s3 sync ./dist s3://fitfit-react-app --delete | |
| # 8. CloudFront 캐시 무효화 (이전과 동일) | |
| - name: CloudFront 캐시 무효화 | |
| run: aws cloudfront create-invalidation --distribution-id E2GBGD9WFX9OQV --paths "/*" |