cloudflare/cloudflare-typescript
Publicmirrored fromhttps://github.com/cloudflare/cloudflare-typescriptAvailable
scripts/utils/upload-artifact.sh
27lines · modecode
| 1 | #!/usr/bin/env bash |
| 2 | set -exuo pipefail |
| 3 | |
| 4 | RESPONSE=$(curl -X POST "$URL" \ |
| 5 | -H "Authorization: Bearer $AUTH" \ |
| 6 | -H "Content-Type: application/json") |
| 7 | |
| 8 | SIGNED_URL=$(echo "$RESPONSE" | jq -r '.url') |
| 9 | |
| 10 | if [[ "$SIGNED_URL" == "null" ]]; then |
| 11 | echo -e "\033[31mFailed to get signed URL.\033[0m" |
| 12 | exit 1 |
| 13 | fi |
| 14 | |
| 15 | TARBALL=$(cd dist && npm pack --silent) |
| 16 | |
| 17 | UPLOAD_RESPONSE=$(curl -v -X PUT \ |
| 18 | -H "Content-Type: application/gzip" \ |
| 19 | --data-binary "@dist/$TARBALL" "$SIGNED_URL" 2>&1) |
| 20 | |
| 21 | if echo "$UPLOAD_RESPONSE" | grep -q "HTTP/[0-9.]* 200"; then |
| 22 | echo -e "\033[32mUploaded build to Stainless storage.\033[0m" |
| 23 | echo -e "\033[32mInstallation: npm install 'https://pkg.stainless.com/s/cloudflare-node/$SHA'\033[0m" |
| 24 | else |
| 25 | echo -e "\033[31mFailed to upload artifact.\033[0m" |
| 26 | exit 1 |
| 27 | fi |
| 28 | |