Initial commit: add .gitignore and README
This commit is contained in:
82
scripts/add-omada-env.sh
Executable file
82
scripts/add-omada-env.sh
Executable file
@@ -0,0 +1,82 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Script to add Omada environment variables to existing .env file
|
||||
|
||||
set -e
|
||||
|
||||
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
||||
PROJECT_ROOT="$(cd "$SCRIPT_DIR/.." && pwd)"
|
||||
|
||||
ENV_FILE="$PROJECT_ROOT/.env"
|
||||
ENV_EXAMPLE="$PROJECT_ROOT/env.example"
|
||||
|
||||
if [ ! -f "$ENV_FILE" ]; then
|
||||
echo "❌ .env file not found. Creating from template..."
|
||||
cp "$ENV_EXAMPLE" "$ENV_FILE"
|
||||
echo "✅ Created .env file. Please edit it with your credentials."
|
||||
exit 0
|
||||
fi
|
||||
|
||||
echo "Adding Omada environment variables to existing .env file..."
|
||||
|
||||
# Check if variables already exist
|
||||
OMADA_VARS=(
|
||||
"OMADA_USERNAME"
|
||||
"OMADA_PASSWORD"
|
||||
"OMADA_ID"
|
||||
"OMADA_CONTROLLER_BASE"
|
||||
"OMADA_NORTHBOUND_BASE"
|
||||
"DATABASE_URL"
|
||||
"JWT_SECRET"
|
||||
"PORT"
|
||||
"NODE_ENV"
|
||||
"LOG_LEVEL"
|
||||
"SYNC_JOB_SCHEDULE"
|
||||
"LICENSE_JOB_SCHEDULE"
|
||||
)
|
||||
|
||||
# Read existing .env and check what's missing
|
||||
MISSING_VARS=()
|
||||
for var in "${OMADA_VARS[@]}"; do
|
||||
if ! grep -q "^${var}=" "$ENV_FILE" 2>/dev/null; then
|
||||
MISSING_VARS+=("$var")
|
||||
fi
|
||||
done
|
||||
|
||||
if [ ${#MISSING_VARS[@]} -eq 0 ]; then
|
||||
echo "✅ All Omada environment variables are already present in .env"
|
||||
exit 0
|
||||
fi
|
||||
|
||||
echo "Found ${#MISSING_VARS[@]} missing variable(s): ${MISSING_VARS[*]}"
|
||||
echo ""
|
||||
|
||||
# Append missing variables from template
|
||||
echo "" >> "$ENV_FILE"
|
||||
echo "# ============================================" >> "$ENV_FILE"
|
||||
echo "# Omada Cloud Integration Variables" >> "$ENV_FILE"
|
||||
echo "# ============================================" >> "$ENV_FILE"
|
||||
|
||||
# Extract and add missing variables from env.example
|
||||
while IFS= read -r line; do
|
||||
# Skip comments and empty lines
|
||||
[[ "$line" =~ ^[[:space:]]*# ]] && continue
|
||||
[[ -z "${line// }" ]] && continue
|
||||
|
||||
# Extract variable name
|
||||
var_name=$(echo "$line" | cut -d'=' -f1)
|
||||
|
||||
# Check if this variable is missing
|
||||
if [[ " ${MISSING_VARS[@]} " =~ " ${var_name} " ]]; then
|
||||
echo "$line" >> "$ENV_FILE"
|
||||
fi
|
||||
done < "$ENV_EXAMPLE"
|
||||
|
||||
echo "✅ Added missing Omada environment variables to .env"
|
||||
echo ""
|
||||
echo "📝 Please edit .env and fill in the actual values for:"
|
||||
for var in "${MISSING_VARS[@]}"; do
|
||||
echo " - $var"
|
||||
done
|
||||
echo ""
|
||||
|
||||
Reference in New Issue
Block a user