62 lines
1.5 KiB
Bash
62 lines
1.5 KiB
Bash
source scripts/qa/lib/bash/qa.sh
|
|
source scripts/qa/lib/bash/packages.sh
|
|
|
|
prerelease_tag="$1"
|
|
packages=""
|
|
|
|
if [ -n "$prerelease_tag" ]; then
|
|
echo "Fetching pre-release CopilotKit packages..."
|
|
packages=$(get_latest_copilotkit_prerelase_versions "$prerelease_tag")
|
|
echo "Pre-release CopilotKit packages: $packages"
|
|
fi
|
|
|
|
if [ -z "$packages" ]; then
|
|
echo "No pre-release CopilotKit packages provided."
|
|
read -p "Enter package names separated by space or Enter to install local packages: " packages
|
|
fi
|
|
|
|
if [ -z "$packages" ]; then
|
|
echo "Installing local packages..."
|
|
else
|
|
echo "Installing packages: $packages"
|
|
fi
|
|
|
|
# only prompt for openai key if it is not set already
|
|
if [ -z "$OPENAI_API_KEY" ]; then
|
|
read -p "Enter OpenAI API key: " OPENAI_API_KEY
|
|
else
|
|
# Extract the first 5 characters of the API key
|
|
key_start=${OPENAI_API_KEY:0:5}
|
|
# Calculate the number of asterisks to print based on the key length
|
|
num_asterisks=$((${#OPENAI_API_KEY}-5))
|
|
asterisks=$(printf '%*s' "$num_asterisks" '' | tr ' ' '*')
|
|
echo "Using existing OPENAI_API_KEY: $key_start$asterisks"
|
|
fi
|
|
|
|
pid1=0
|
|
pid2=0
|
|
pid3=0
|
|
|
|
cleanup() {
|
|
if [ $pid1 -ne 0 ]; then
|
|
kill -9 $pid1 2>/dev/null || true
|
|
fi
|
|
if [ $pid2 -ne 0 ]; then
|
|
kill -9 $pid2 2>/dev/null || true
|
|
fi
|
|
if [ $pid3 -ne 0 ]; then
|
|
kill -9 $pid3 2>/dev/null || true
|
|
fi
|
|
killall next-server 2>/dev/null || true
|
|
}
|
|
|
|
# Trap Ctrl+C (INT signal) and exit
|
|
trap "echo 'Script interrupted.'; cleanup; exit" INT
|
|
trap "cleanup" EXIT
|
|
|
|
# Exit on any error
|
|
set -e
|
|
|
|
# record the current date + time
|
|
info "Test started at $(date)"
|