
๐ ๋ชฉ์ฐจ
1. Amazon IAM ์์ฑ
1. ์ฌ์ฉ์ ์ด๋ฆ, ์๊ฒฉ์ฆ๋ช ์ ํ ์ ํ

2. ๊ถํ ์ค์ 

๋๋จธ์ง๋ ๋ค์ ๋ค์ ๋๋ฌ์ ๋๊ฒจ์ฃผ์๋ฉด ๋ฉ๋๋ค.
์ฌ์ฉ์ ์ถ๊ฐ๊ฐ ์๋ฃ๋๋ฉด ํค๊ฐ ํฌํจ๋ csv๋ฅผ ๋ค์ด๋ก๋ ํ ์ ์์ต๋๋ค.

2. github secrets ์ธํ
๊นํ ํ๋ก์ ํธ๋ฅผ ์๋ก ์์ฑํ์ฌ ์์ ํ vue ํ๋ก์ ํธ๋ฅผ ์ ๋ก๋ ํฉ๋๋ค.
Settingsํญ > secrets > actions > New repository secret

์๊น S3์์ ์์ฑํ key id์ secret์ ๊ฐ๊ฐ AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY ์ด๋ฆ์ผ๋ก ๋ฑ๋กํฉ๋๋ค.

3. github workflows์ ์
ํ๋ก์ ํธ์ ๋ฃจํธ ๋๋ ํ ๋ฆฌ์
.github/workflows ํด๋๋ฅผ ๋ง๋ค๊ณ ํ์์ deploy.yml ํ์ผ์ ์์ฑํด์ค๋๋ค.
name: Deploy
on:
  push:
    branches:
      - [๋ธ๋์น๋ช
]
jobs:
  deploy:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v2
      - name: Cache modules
        uses: actions/cache@v1
        id: yarn-cache
        with:
          path: node_modules
          key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }}
          restore-keys: ${{ runner.os }}-yarn-
      - name: Configure AWS credentials
        uses: aws-actions/configure-aws-credentials@v1
        with:
          aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
          aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
          aws-region: ap-northeast-2
      - name: Use Node.js 12.x
        uses: actions/setup-node@v1
        with:
          node-version: 12.x
      - name: Install dependencies
        run: yarn
      - name: Build
        run: yarn build
      - name: Deploy
        run: aws s3 sync ./dist s3://[๋ฒํท๋ช
]
branches: ์ชฝ์ workflow๋ฅผ ํธ๋ฆฌ๊ฑฐํ branch๋ฅผ ์ ์ํด์ฃผ์ธ์. ์ ๋ main๋ธ๋์น๋ก ํ์ต๋๋ค.
๊ทธ๋ฆฌ๊ณ ๋งจ ์๋์ S3 ๋ฒํท๋ช ์ ๋ณธ์ธ์ด ๋ง๋ ๋ฒํท ๋ช ์ผ๋ก ์์ ํด์ฃผ์ธ์.
์๋ก์ด ์ปค๋ฐ์ ํธ์ํ๋ฉด ์๋์ ๊ฐ์ด workflow๊ฐ ์คํ๋ฉ๋๋ค.

์น์ฌ์ดํธ์ ๋ฐฉ๋ฌธํด๋ณด๋ฉด ์์ ์ฌํญ์ด ์ ๋ฐ์๋๋๊ฒ์ ํ์ธํ ์ ์์ต๋๋ค.