From ade85ab40c7a2575967f35ea684a8df0a48b0f94 Mon Sep 17 00:00:00 2001 From: Your Name Date: Thu, 26 Jun 2025 20:36:30 +0100 Subject: [PATCH 1/2] Enhance Vercel deployment workflow by creating .vercel directory and project.json for project linking --- .github/workflows/deploy-vercel-fullstack.yml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.github/workflows/deploy-vercel-fullstack.yml b/.github/workflows/deploy-vercel-fullstack.yml index 30bfa546e..22c794549 100644 --- a/.github/workflows/deploy-vercel-fullstack.yml +++ b/.github/workflows/deploy-vercel-fullstack.yml @@ -117,7 +117,9 @@ jobs: run: | cd frontend echo "Setting up Vercel configuration..." - vercel pull --yes --environment=preview --token=${{ secrets.VERCEL_TOKEN }} + # Create .vercel directory and project.json for linking + mkdir -p .vercel + echo '{"orgId":"${{ secrets.VERCEL_ORG_ID }}","projectId":"${{ secrets.VERCEL_FRONTEND_PROJECT_ID }}"}' > .vercel/project.json echo "Deploying frontend to Vercel..." echo "Current directory: $(pwd)" From 15a62d44171a4b5460c037092895fe14dc7a989b Mon Sep 17 00:00:00 2001 From: Your Name Date: Thu, 26 Jun 2025 20:40:20 +0100 Subject: [PATCH 2/2] Refine Vercel deployment workflow to handle configuration pull failures gracefully, ensuring robust deployment process --- .github/workflows/deploy-vercel-fullstack.yml | 25 +++++++++++++------ 1 file changed, 18 insertions(+), 7 deletions(-) diff --git a/.github/workflows/deploy-vercel-fullstack.yml b/.github/workflows/deploy-vercel-fullstack.yml index 22c794549..e241c769b 100644 --- a/.github/workflows/deploy-vercel-fullstack.yml +++ b/.github/workflows/deploy-vercel-fullstack.yml @@ -34,9 +34,21 @@ jobs: run: | cd backend echo "Deploying backend to Vercel..." - vercel pull --yes --environment=preview --token=${{ secrets.VERCEL_TOKEN }} - vercel build --token=${{ secrets.VERCEL_TOKEN }} - DEPLOYMENT_URL=$(vercel deploy --prebuilt --token=${{ secrets.VERCEL_TOKEN }}) + echo "Setting up Vercel project linking..." + # Ensure .vercel directory exists and create project.json + mkdir -p .vercel + echo "{\"orgId\":\"$VERCEL_ORG_ID\",\"projectId\":\"$VERCEL_PROJECT_ID\"}" > .vercel/project.json + + # Try vercel pull first, if it fails, proceed with direct deployment + if vercel pull --yes --environment=preview --token=${{ secrets.VERCEL_TOKEN }}; then + echo "✅ Successfully pulled Vercel configuration" + vercel build --token=${{ secrets.VERCEL_TOKEN }} + DEPLOYMENT_URL=$(vercel deploy --prebuilt --token=${{ secrets.VERCEL_TOKEN }}) + else + echo "⚠️ Vercel pull failed, proceeding with direct deployment" + DEPLOYMENT_URL=$(vercel deploy --token=${{ secrets.VERCEL_TOKEN }}) + fi + echo "url=$DEPLOYMENT_URL" >> $GITHUB_OUTPUT echo "Backend deployed to: $DEPLOYMENT_URL" env: @@ -117,17 +129,16 @@ jobs: run: | cd frontend echo "Setting up Vercel configuration..." - # Create .vercel directory and project.json for linking + # Ensure .vercel directory exists and create project.json mkdir -p .vercel - echo '{"orgId":"${{ secrets.VERCEL_ORG_ID }}","projectId":"${{ secrets.VERCEL_FRONTEND_PROJECT_ID }}"}' > .vercel/project.json + echo "{\"orgId\":\"$VERCEL_ORG_ID\",\"projectId\":\"$VERCEL_PROJECT_ID\"}" > .vercel/project.json - echo "Deploying frontend to Vercel..." echo "Current directory: $(pwd)" echo "Dist folder contents:" ls -la dist/ # Deploy from current directory with backend URL as environment variable - echo "Deploying with Vercel using outputDirectory configuration and backend URL..." + echo "Deploying frontend to Vercel..." echo "Setting VITE_API_BASE_URL to: ${{ needs.deploy-backend.outputs.backend-url }}" DEPLOYMENT_URL=$(vercel deploy --token=${{ secrets.VERCEL_TOKEN }} --build-env VITE_API_BASE_URL=${{ needs.deploy-backend.outputs.backend-url }}) echo "url=$DEPLOYMENT_URL" >> $GITHUB_OUTPUT