# Workflow to build and deploy site to Vercel using static files # Name of Workflow name: vercel-deploy-branch-deploys # Controls when the action will run. Triggers the workflow on push # events but only for specified branches on: push: branches: - main - develop env: PRODUCTION_BRANCH: main # A workflow run is made up of one or more jobs that can run sequentially or in parallel jobs: deploy-branch: runs-on: ubuntu-latest # Steps represent a sequence of tasks that will be executed as part of the job steps: - name: Make some more metadata available as variables id: metadata run: | TRIGGER_BRANCH=${GITHUB_REF##*/} echo "TRIGGER_BRANCH=${TRIGGER_BRANCH}" | tee -a "$GITHUB_ENV" | tee -a "$GITHUB_OUTPUT" echo "DEPLOY_NAME=BRANCH-${TRIGGER_BRANCH}" | tee -a "$GITHUB_ENV" | tee -a "$GITHUB_OUTPUT" if [ "${TRIGGER_BRANCH}" == "${PRODUCTION_BRANCH}" ] then echo "VERCEL_ARGS=--prod" | tee -a "$GITHUB_ENV" | tee -a "${GITHUB_OUTPUT}" fi # Checks-out your repository under $GITHUB_WORKSPACE - name: Checkout uses: actions/checkout@v3 with: submodules: recursive # Fetch private content fetch-depth: 1 # Fetch all history for .GitInfo and .Lastmod # Initiate GH deployment status - name: Start Deployment uses: bobheadxi/deployments@v0.6.2 id: deployment with: step: start token: ${{ secrets.GITHUB_TOKEN }} env: vercel-deploy-${{ steps.metadata.outputs.DEPLOY_NAME }} - name: Setup Node uses: actions/setup-node@v2 with: node-version: '18' - name: Run unit tests env: NODE_OPTIONS: "--max_old_space_size=8192" run: | npm ci npm run test - name: 🔨 Build project run: npm run build - name: Configure vercel.json run: | cat > build/vercel.json <