From 6b46b89303f9ccf97612938d1d1893cf0a332d9c Mon Sep 17 00:00:00 2001 From: sikkzz Date: Sun, 26 Jan 2025 12:49:14 +0900 Subject: [PATCH] =?UTF-8?q?chore:=20deploy=20yml=20=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/deploy.yml | 85 ++++++++++++++++++++++++++++++++++++ 1 file changed, 85 insertions(+) create mode 100644 .github/workflows/deploy.yml diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml new file mode 100644 index 0000000..5040f67 --- /dev/null +++ b/.github/workflows/deploy.yml @@ -0,0 +1,85 @@ +name: Deploy + +env: + VERCEL_TOKEN: ${{ secrets.VERCEL_TOKEN }} + +on: + pull_request: + types: + - closed + branches: + - develop + +jobs: + project-build: + runs-on: ubuntu-latest + steps: + - name: Checkout + uses: actions/checkout@v4 + + - name: Setup node + uses: actions/setup-node@v4 + with: + node-version: 18 + cache: "yarn" + + - name: Set yarn version + id: set-version + run: | + yarn set version 4.1.1 + echo "YARN_VERSION=$(yarn -v)" >> $GITHUB_OUTPUT + + - name: Yarn cache - PnP + uses: actions/cache@v4 + with: + path: | + .yarn/cache + .pnp.* + key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }}-${{ steps.set-version.outputs.YARN_VERSION }} + restore-keys: | + ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }}- + + - name: Install dependencies + run: yarn + + - name: Run build + run: yarn build + + deploy-to-vercel: + runs-on: ubuntu-latest + needs: project-build + steps: + - name: Checkout + uses: actions/checkout@v4 + + - name: Setup node + uses: actions/setup-node@v4 + with: + node-version: 18 + cache: "yarn" + + - name: Set yarn version + id: set-version + run: | + yarn set version 4.1.1 + echo "YARN_VERSION=$(yarn -v)" >> $GITHUB_OUTPUT + + - name: Yarn cache - PnP + uses: actions/cache@v4 + with: + path: | + .yarn/cache + .pnp.* + key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }}-${{ steps.set-version.outputs.YARN_VERSION }} + restore-keys: | + ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }}- + + - name: Install dependencies + run: yarn + + - name: Deploy to Vercel + run: | + npm install --global vercel@latest + vercel pull --yes --environment=production --token=${{ secrets.VERCEL_TOKEN }} + vercel build --prod --token=${{ secrets.VERCEL_TOKEN }} + vercel deploy --prebuilt --prod --token=${{ secrets.VERCEL_TOKEN }}