diff --git a/sdks/typescript/package.json b/sdks/typescript/package.json index 9bf4805..748b89f 100644 --- a/sdks/typescript/package.json +++ b/sdks/typescript/package.json @@ -4,10 +4,14 @@ "description": "TypeScript SDK for test-server", "main": "dist/index.js", "types": "dist/index.d.ts", + "publishConfig": { + "registry": "https://us-npm.pkg.dev/oss-exit-gate-prod/test-server--npm/" + }, "scripts": { "postinstall": "node postinstall.js", "build": "tsc", "prepublishOnly": "npm run build", + "release:exit-gate": "./release_exit_gate.sh", "test": "npm run build & jasmine" }, "repository": { diff --git a/sdks/typescript/release_exit_gate.sh b/sdks/typescript/release_exit_gate.sh new file mode 100755 index 0000000..a24d701 --- /dev/null +++ b/sdks/typescript/release_exit_gate.sh @@ -0,0 +1,45 @@ +#!/usr/bin/env bash +# OSS Exit Gate Release Script for D12: google/test-server (test-server/npm — b/576682049, b/576678670) +set -euo pipefail + +EXIT_GATE_AR_URL="https://us-npm.pkg.dev/oss-exit-gate-prod/test-server--npm/" +EXIT_GATE_MANIFEST_GCS="gs://oss-exit-gate-prod-projects-bucket/test-server/npm/manifests" + +npm ci +npm run build + +ACCESS_TOKEN="$(gcloud auth print-access-token)" +NPMRC_TMP="$(mktemp)" +cat << EOF > "${NPMRC_TMP}" +registry=${EXIT_GATE_AR_URL} +//us-npm.pkg.dev/oss-exit-gate-prod/test-server--npm/:always-auth=true +//us-npm.pkg.dev/oss-exit-gate-prod/test-server--npm/:_authToken=${ACCESS_TOKEN} +EOF +trap 'rm -f "${NPMRC_TMP}"' EXIT + +VERSION="$(jq -r .version package.json)" +echo "1. Staging test-server-sdk@${VERSION} to ${EXIT_GATE_AR_URL}..." +npm publish --userconfig="${NPMRC_TMP}" --registry="${EXIT_GATE_AR_URL}" + +echo "2. Uploading OSS Exit Gate manifest to ${EXIT_GATE_MANIFEST_GCS}..." +MANIFEST_FILE="$(mktemp)" +cat << EOF > "${MANIFEST_FILE}" +{ + "publish_all": false, + "publishing_groups": [ + { + "packages": [ + { + "name": "test-server-sdk", + "version": "${VERSION}" + } + ] + } + ] +} +EOF + +gcloud storage cp "${MANIFEST_FILE}" \ + "${EXIT_GATE_MANIFEST_GCS}/manifest-test-server-sdk-${VERSION}-$(date +%s).json" +rm -f "${MANIFEST_FILE}" +echo "Done! OSS Exit Gate release triggered for test-server-sdk@${VERSION}."