Github Actions 설정

Jean Young Park·2024년 12월 9일
0

AWS

목록 보기
6/6

드디어 github actions다!
나는 master에 push 액션이 일어날때마다 자동으로 AWS S3에 배포가 되도록 설정할 것이다.


먼저 github의 setting으로 들어가준다. (repository의 setting이다.)

Secrets and Variables의 Actions로 들어간다.

이제 AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY를 만들어주면 되는데 AWS IAM 설정에서 최종적으로 만들었던 액세스 키와 비밀 액세스 키를 입력해준다.

이제 Actions 탭으로 이동하여 "set up a workflow yourself"로 이동한 후에 나의 프로젝트에 맞게 설정을 변경해주면 된다!

나의 경우 아래와 같이 작성했다.

name: 3d front Project

# trigger가 되는 브랜치명 및 액션(push)
on:
  push:
    branches:
      - master

# 위 이벤트가 트리거되면 실행할 목록
jobs:
  build:
    # runner가 실행될 환경 지정
    runs-on: ubuntu-latest

   # named은 단계별로 실행되는 액션들의 설명을 담은 것으로, 나중에 github action에서 workflow에 표시된다.
   # uses 키워드로 action을 불러옴
    steps:
      - name: Checkout source code. # 레포지토리 체크아웃
        uses: actions/checkout@v3
        
      - name: Cache node modules # node modules 캐싱
        uses: actions/cache@v3
        with:
          path: node_modules # 프로젝트의 node_modules가 있는 경로로 설정
          key: ${{ runner.OS }}-build-${{ hashFiles('**/package-lock.json') }}
          restore-keys: |
            ${{ runner.OS }}-build-
            ${{ runner.OS }}-

      - name: Install Dependencies
        run: npm install --force

      - name: Build
        run: npm run build

      # aws 자격증명
      - name: Configure AWS credentials
        uses: aws-actions/configure-aws-credentials@v1  # AWS 인증을 위한 공식 액션 사용
        with:
          aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
          aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY_ID }}
          aws-region: ap-northeast-2
          
      # s3에 build 파일을 올린다.
      - name: Upload to S3
        run: |
          aws s3 sync ./build s3://${{ secrets.AWS_S3_BUCKET }} \
            --delete  # 불필요한 파일 삭제


성공!
나도 한번에 된건 아니고 여기 저기 찾으면서 하나씩 수정했다,,! 후 그래도 아주아주 뿌듯하다 희희
배포 성공한 도메인

0개의 댓글