Skip to content

Promote Main to Release Branches #46

Promote Main to Release Branches

Promote Main to Release Branches #46

Workflow file for this run

name: Build and Vercel Production Deployment
permissions:
contents: write
env:
VERCEL_ORG_ID: ${{ secrets.VERCEL_ORG_ID }}
VERCEL_PROJECT_ID: ${{ secrets.VERCEL_PROJECT_ID }}
VERCEL_ENV: production
on:
workflow_dispatch:
jobs:
generate_tag:
name: Generate HeadVer Tag
uses: ./.github/workflows/headver-tagging.yml
with: {}
create_release:
name: Create GitHub Release
runs-on: ubuntu-latest
needs: generate_tag
steps:
- uses: actions/checkout@v3
with:
fetch-depth: 0
- name: Create Release
id: create_release
uses: ncipollo/release-action@v1
with:
tag: "v${{ needs.generate_tag.outputs.version }}"
release_name: "Release v${{ needs.generate_tag.outputs.version }}"
body: "Automated release created for build v${{ needs.generate_tag.outputs.version }}"
token: ${{ secrets.GITHUB_TOKEN }}
deploy_production:
runs-on: ubuntu-latest
needs: create_release
env:
VERSION_TAG: ${{ needs.generate_tag.outputs.version }}
steps:
- uses: actions/checkout@v3
- name: Install pnpm
uses: pnpm/action-setup@v3
with:
version: 9
- name: Install Vercel CLI
run: pnpm add --global vercel@latest
- name: Remove existing .vercel directory
run: rm -rf .vercel
- name: Pull Vercel Environment Information
run: vercel pull --yes --environment=${{ env.VERCEL_ENV }} --token=${{ secrets.VERCEL_TOKEN }}
- name: Build Project Artifacts
run: |
vercel build \
--yes \
--target=${{ env.VERCEL_ENV }} \
--build-env NEXT_PUBLIC_WEB_URL=https://www.solid-connection.com \
--build-env NEXT_PUBLIC_API_SERVER_URL=https://api.solid-connection.com \
--build-env NEXT_PUBLIC_KAKAO_JS_KEY=b285223d3e57a6820552018b93805658 \
--token=${{ secrets.VERCEL_TOKEN }}
- name: Deploy Project Artifacts to Vercel
run: vercel deploy --prebuilt --target=${{ env.VERCEL_ENV }} --token=${{ secrets.VERCEL_TOKEN }}
- name: Output Tag Version
run: echo "Deployment completed for version $VERSION_TAG"