Changed stop_demo to only stop one file at a time

This commit is contained in:
aayushwhiz 2024-12-06 08:35:55 -08:00
parent 984eb4b3f8
commit 215a0d7730

View file

@ -29,13 +29,13 @@ get_compose_file() {
# Function to start the demo
start_demo() {
# Step 1: Determine the docker-compose file
COMPOSE_FILE=$(get_compose_file "$1" 2>/dev/null) # Redirects output to /dev/null so user doesn't see it
COMPOSE_FILE=$(get_compose_file "$1")
# Step 2: Check if .env file exists
if [ -f ".env" ]; then
echo ".env file already exists. Skipping creation."
else
# Step 3: Create `.env` file and set OpenAI key
# Step 3: Check for required environment variables
if [ -z "$OPENAI_API_KEY" ]; then
echo "Error: OPENAI_API_KEY environment variable is not set for the demo."
exit 1
@ -45,50 +45,44 @@ start_demo() {
exit 1
fi
# Create .env file
echo "Creating .env file..."
echo "OPENAI_API_KEY=$OPENAI_API_KEY" > .env
if [ "$1" == "logfire" ]; then
echo "LOGFIRE_API_KEY=$LOGFIRE_API_KEY" >> .env
fi
echo ".env file created with OPENAI_API_KEY."
echo ".env file created with required API keys."
fi
load_env
if [ "$1" == "logfire" ] && [ -z "$LOGFIRE_API_KEY" ]; then
echo "Error: LOGFIRE_API_KEY environment variable is required for Logfire."
exit 1
fi
# Step 4: Start Arch
echo "Starting Arch with arch_config.yaml..."
archgw up arch_config.yaml
# Step 5: Start Network Agent with the chosen Docker Compose file
echo "Starting Network Agent using $COMPOSE_FILE..."
docker compose -f "$COMPOSE_FILE" up -d # Run in detached mode
}
# Function to stop the demo
stop_demo() {
echo "Stopping all Docker Compose services..."
# Step 1: Determine the demo to stop (default to jaeger if no argument provided)
DEMO=${1:-jaeger}
COMPOSE_FILE=$(get_compose_file "$DEMO")
# Stop all services by iterating through all configurations
for compose_file in ./docker-compose*.yaml; do
echo "Stopping services in $compose_file..."
docker compose -f "$compose_file" down
done
# Step 2: Stop the specified Docker Compose services
echo "Stopping services for $DEMO using $COMPOSE_FILE..."
docker compose -f "$COMPOSE_FILE" down
# Stop Arch
# Step 3: Stop Arch
echo "Stopping Arch..."
archgw down
}
# Main script logic
if [ "$1" == "down" ]; then
stop_demo
# Call stop_demo with the second argument as the demo to stop
stop_demo "$2"
else
# Use the argument (jaeger, logfire, signoz) to determine the compose file
start_demo "$1"