#!/bin/bash
set -e
echo "π§ͺ Testing release workflow locally..."
# Simulate the workflow steps for current platform
TARGET="x86_64-unknown-linux-gnu"
PLATFORM="linux-x64"
echo "π Building for target: $TARGET"
npm run build
echo "π Creating platform package directory..."
mkdir -p npm/$PLATFORM
echo "π¦ Copying binary to platform package..."
if [ -f rust-core/*.node ]; then
cp rust-core/*.node npm/$PLATFORM/
echo "β
Binary copied successfully"
else
echo "β No .node file found"
exit 1
fi
echo "π Checking platform package structure..."
ls -la npm/$PLATFORM/
echo "π Validating package.json..."
if [ -f npm/$PLATFORM/package.json ]; then
echo "β
package.json exists"
node -e "
const pkg = require('./npm/$PLATFORM/package.json');
console.log('Package name:', pkg.name);
console.log('Version:', pkg.version);
console.log('Main:', pkg.main);
console.log('OS:', pkg.os);
console.log('CPU:', pkg.cpu);
"
else
echo "β package.json missing"
exit 1
fi
echo "π― Testing npm pack (dry run)..."
cd npm/$PLATFORM
npm pack --dry-run
cd ../..
echo "β
Release workflow test completed successfully!"
echo "π Ready for production release!"