master-zapier-plan-draft/vendor/zapier-platform/scripts/check-publish.sh
George Lambert b4150c8250 Milestone 0: import zappier billing, Verae middleware, and Zapier research
Compose-ready workspace: packages/zappier (rate card, portal, Stripe),
packages/verae-zapier-middleware (timestamp + NATS), packages/verae-zapier
(CLI app), vendor/zapier-platform, and research/zapier vendor corpus.

Gate 0 structure checks pass. Product code and research are not yet wired.
2026-09-09 02:37:36 -04:00

34 lines
1.3 KiB
Bash
Executable file

#!/usr/bin/env bash
# Check which packages need publishing by comparing local vs npm versions.
# Outputs results to GITHUB_OUTPUT if running in CI, otherwise prints to stdout.
set -eo pipefail
check_package() {
local name=$1
local dir=$2
local short_name=$3
local local_version=$(node -p "require('./$dir/package.json').version")
local published_version=$(npm view "$name" version 2>/dev/null || echo "")
if [ "$local_version" != "$published_version" ]; then
echo "$name: $published_version -> $local_version (needs publish)"
[ -n "$GITHUB_OUTPUT" ] && echo "${short_name}_needs_publish=true" >> "$GITHUB_OUTPUT" || true
else
echo "$name: $local_version (up to date)"
[ -n "$GITHUB_OUTPUT" ] && echo "${short_name}_needs_publish=false" >> "$GITHUB_OUTPUT" || true
fi
}
check_package zapier-platform-schema packages/schema schema
check_package zapier-platform-core packages/core core
check_package zapier-platform-cli packages/cli cli
check_package zapier-platform-legacy-scripting-runner packages/legacy-scripting-runner lsr
if [ -n "$GITHUB_OUTPUT" ]; then
if grep -q '_needs_publish=true' "$GITHUB_OUTPUT"; then
echo "should_publish=true" >> "$GITHUB_OUTPUT"
else
echo "should_publish=false" >> "$GITHUB_OUTPUT"
fi
fi