#!/bin/bash # Manual Deployment Script for Basil # Simple wrapper around deploy.sh with interactive prompts set -e SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" # Colors BLUE='\033[0;34m' GREEN='\033[0;32m' YELLOW='\033[1;33m' NC='\033[0m' echo -e "${BLUE}=========================================${NC}" echo -e "${BLUE} Basil Manual Deployment${NC}" echo -e "${BLUE}=========================================${NC}" echo "" # Check if .env file exists for configuration if [ -f "$SCRIPT_DIR/../.env.deploy" ]; then echo -e "${GREEN}Loading configuration from .env.deploy${NC}" source "$SCRIPT_DIR/../.env.deploy" fi # Prompt for Docker username if not set if [ -z "$DOCKER_USERNAME" ]; then read -p "Enter Docker Hub username: " DOCKER_USERNAME export DOCKER_USERNAME fi # Prompt for Docker registry (default: docker.io) if [ -z "$DOCKER_REGISTRY" ]; then read -p "Enter Docker registry [docker.io]: " DOCKER_REGISTRY DOCKER_REGISTRY=${DOCKER_REGISTRY:-docker.io} export DOCKER_REGISTRY fi # Prompt for image tag (default: latest) if [ -z "$IMAGE_TAG" ]; then read -p "Enter image tag [latest]: " IMAGE_TAG IMAGE_TAG=${IMAGE_TAG:-latest} export IMAGE_TAG fi echo "" echo -e "${YELLOW}Deployment Configuration:${NC}" echo " Registry: $DOCKER_REGISTRY" echo " Username: $DOCKER_USERNAME" echo " Tag: $IMAGE_TAG" echo "" read -p "Proceed with deployment? (y/N): " -n 1 -r echo "" if [[ ! $REPLY =~ ^[Yy]$ ]]; then echo "Deployment cancelled" exit 0 fi # Save configuration for next time cat > "$SCRIPT_DIR/../.env.deploy" <