From 56cc2576f7ed2d1ef6ddf955f40ed54cbb37144e Mon Sep 17 00:00:00 2001 From: jinyeongjang <80664549+jinyeongjang@users.noreply.github.com> Date: Mon, 2 Sep 2024 19:22:46 +0900 Subject: [PATCH] =?UTF-8?q?=F0=9F=93=A6=EF=B8=8F=20Chore:=20S3-CloudFront?= =?UTF-8?q?=20CICD=20Settings=20=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/deploy.yml | 44 ++++++++++++++---------------------- 1 file changed, 17 insertions(+), 27 deletions(-) diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index 117c1e5..8da95e1 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -2,44 +2,34 @@ name: Deploy to S3 and CloudFront on: push: - branches: - - dev + branches: [dev] + +env: + CI: false jobs: build: runs-on: ubuntu-latest steps: - - name: Checkout code - uses: actions/checkout@v2 - - - name: Set up Node.js - uses: actions/setup-node@v2 - with: - node-version: '16' + - name: Checkout source code + uses: actions/checkout@v2 # workflow에서 액세스할 수 있도록 저장소를 체크아웃 - name: Install dependencies - run: npm install + run: yarn install - - name: Build project - run: npm run build + - name: Build + run: yarn build - - name: Deploy to S3 - uses: aws-actions/s3-sync@v1.0.4 - with: - source-dir: 'build' - destination-bucket: ${{ secrets.AWS_S3_BUCKET }} - destination-region: 'ap-northeast-2' - delete-removed: true + - name: S3 Deploy + run: aws s3 sync ./build s3://bobpience-s3-bucket/ --acl bucket-owner-full-control # 현재 build된 폴더에 접근 후 s3 버킷에 build 파일 업로드 env: AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }} AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }} - - - name: Invalidate CloudFront - uses: aws-actions/cloudfront-invalidate@v1.0.1 - with: - distribution-id: ${{ secrets.CLOUDFRONT_DISTRIBUTION_ID }} - paths: '/*' + AWS_REGION: ${{ secrets.AWS_REGION }} + - name: Invalidate CloudFront Cache # 새로 리소스를 업데이트할 때 기존 캐시 무효화 + uses: chetan/invalidate-cloudfront-action@master env: - AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }} - AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }} + AWS_DISTRIBUTION: ${{ secrets.AWS_DISTRIBUTION_ID }} + PATHS: '/index.html' + continue-on-error: true