Bläddra i källkod

Fix attempt to delete nonexistent npm tag (#4374)

(cherry picked from commit 9fa550c62f8f086f2d874f4113819e1eaf33f686)
Francisco 2 år sedan
förälder
incheckning
17c1a3a458
1 ändrade filer med 8 tillägg och 2 borttagningar
  1. 8 2
      scripts/release/workflow/publish.sh

+ 8 - 2
scripts/release/workflow/publish.sh

@@ -2,19 +2,25 @@
 
 set -euo pipefail
 
+PACKAGE_JSON_NAME="$(tar xfO "$TARBALL" package/package.json | jq -r .name)"
+PACKAGE_JSON_VERSION="$(tar xfO "$TARBALL" package/package.json | jq -r .version)"
+
 # Intentionally escape $ to avoid interpolation and writing the token to disk
 echo "//registry.npmjs.org/:_authToken=\${NPM_TOKEN}" > .npmrc
 
 # Actual publish
 npm publish "$TARBALL" --tag "$TAG"
 
+# Clean up tags
 delete_tag() {
-  PACKAGE_JSON_NAME="$(tar xfO "$TARBALL" package/package.json | jq -r .name)"
   npm dist-tag rm "$PACKAGE_JSON_NAME" "$1"
 }
 
 if [ "$TAG" = tmp ]; then
   delete_tag "$TAG"
 elif [ "$TAG" = latest ]; then
-  delete_tag next
+  # Delete the next tag if it exists and is a prerelease for what is currently being published
+  if npm dist-tag ls "$PACKAGE_JSON_NAME" | grep -q "next: $PACKAGE_JSON_VERSION"; then
+    delete_tag next
+  fi
 fi