Przeglądaj źródła

fix: cicd, delete vercel pre (#3910)

sungaomeng 1 rok temu
rodzic
commit
32bcdb8982

+ 4 - 4
.github/workflows/deploy_preview.yml

@@ -64,17 +64,17 @@ jobs:
         env:
           META_TAG: ${{ steps.hash_branch.outputs.digest }}-${{ github.run_number }}-${{ github.run_attempt}}
         run: |
+          set -e
           vercel pull --yes --environment=preview --token=${VERCEL_TOKEN}
           vercel build --token=${VERCEL_TOKEN}
           vercel deploy --prebuilt --archive=tgz --token=${VERCEL_TOKEN} --meta base_hash=${{ env.META_TAG }}
 
-          vercel ls --token=${VERCEL_TOKEN} --meta base_hash=${{ env.META_TAG }} &> vercel-output
-          DEFAULT_URL=$(cat vercel-output | grep http | awk '{print $2}')
+          DEFAULT_URL=$(vercel ls --token=${VERCEL_TOKEN} --meta base_hash=${{ env.META_TAG }})
+          echo "preview URL:${DEFAULT_URL} , alias URL:${{ steps.set_env.outputs.VERCEL_ALIAS_DOMAIN }}"
           ALIAS_URL=$(vercel alias set ${DEFAULT_URL} ${{ steps.set_env.outputs.VERCEL_ALIAS_DOMAIN }} --token=${VERCEL_TOKEN} --scope ${VERCEL_TEAM}| awk '{print $3}')
 
           echo "New preview URL: ${DEFAULT_URL}"
           echo "New alias URL: ${ALIAS_URL}"
-          echo "META_TAG=${META_TAG}"
           echo "VERCEL_URL=${ALIAS_URL}" >> "$GITHUB_OUTPUT"
 
       - uses: mshick/add-pr-comment@v2
@@ -82,4 +82,4 @@ jobs:
           message: |
             Your build has completed!
 
-            [Preview deployment](${{ steps.vercel.outputs.VERCEL_URL }})
+            [Preview deployment](${{ steps.vercel.outputs.VERCEL_URL }})

+ 4 - 4
scripts/delete-deployment-preview.sh

@@ -7,11 +7,11 @@ GET_DEPLOYMENTS_ENDPOINT="https://api.vercel.com/v6/deployments"
 DELETE_DEPLOYMENTS_ENDPOINT="https://api.vercel.com/v13/deployments"
 
 # Create a list of deployments.
-# deployments=$(curl -s -X GET "$GET_DEPLOYMENTS_ENDPOINT/?projectId=$VERCEL_PROJECT_ID&teamId=$VERCEL_ORG_ID" -H "Authorization: Bearer $VERCEL_TOKEN ")
-deployments=$(curl -s -X GET "$GET_DEPLOYMENTS_ENDPOINT/?projectId=$VERCEL_PROJECT_ID" -H "Authorization: Bearer $VERCEL_TOKEN ")
+deployments=$(curl -s -X GET "$GET_DEPLOYMENTS_ENDPOINT/?projectId=$VERCEL_PROJECT_ID&teamId=$VERCEL_ORG_ID" -H "Authorization: Bearer $VERCEL_TOKEN ")
+#deployments=$(curl -s -X GET "$GET_DEPLOYMENTS_ENDPOINT/?projectId=$VERCEL_PROJECT_ID" -H "Authorization: Bearer $VERCEL_TOKEN ")
 
 # Filter the deployments list by meta.base_hash === meta tag.
-filtered_deployments=$(echo $deployments | jq --arg META_TAG "$META_TAG" '[.deployments[] | select(.meta.base_hash | type == "string" and contains($META_TAG)) | .uid] | join(",")')
+filtered_deployments=$(echo -E $deployments | jq --arg META_TAG "$META_TAG" '[.deployments[] | select(.meta.base_hash | type == "string" and contains($META_TAG)) | .uid] | join(",")')
 filtered_deployments="${filtered_deployments//\"/}" # Remove double quotes
 
 # Clears the values from filtered_deployments
@@ -24,7 +24,7 @@ echo "Filtered deployments ${filtered_deployments}"
 for uid in "${values[@]}"; do
     echo "Deleting ${uid}"
 
-    delete_url=${DELETE_DEPLOYMENTS_ENDPOINT}/${uid}
+    delete_url="${DELETE_DEPLOYMENTS_ENDPOINT}/${uid}?teamId=${VERCEL_ORG_ID}"
     echo $delete_url
 
     # Make DELETE a request to the /v13/deployments/{id} endpoint.