fix(deploy): Update script with corrected environment loading

This commit is contained in:
fullsizemalt 2026-01-08 01:21:52 -08:00
parent b39cd90cf1
commit df208548f5

View file

@ -1,7 +1,7 @@
#!/bin/bash
# CA Grow Ops Manager - Automated Deployment Script
# Usage: ./deploy.sh [env]
# Environments: test (default), prod
# Usage: ./deploy.sh [env] [branch]
# Environments: test (default), prod, preview
set -e # Exit on error
@ -40,7 +40,7 @@ case "$ENV" in
ENV_DISPLAY="🟣 PREVIEW (Veridian-Preview on Nexus-Vector)"
;;
*)
echo "Error: Unknown environment '$ENV'. Use 'test' or 'prod'."
echo "Error: Unknown environment '$ENV'. Use 'test', 'prod', or 'preview'."
exit 1
;;
esac
@ -50,6 +50,7 @@ echo "=============================================="
echo "Target: $ENV_DISPLAY"
echo "Host: $USER@$HOST"
echo "Path: $DEPLOY_PATH"
echo "Branch: $BRANCH"
echo "=============================================="
echo ""
@ -96,7 +97,7 @@ echo -e "${BLUE}Step 4: Syncing repository on $HOST...${NC}"
ssh "$USER@$HOST" "
if [ ! -d $DEPLOY_PATH/.git ]; then
echo ' Cloning repository...'
git clone $REPO_URL $DEPLOY_PATH
git clone -b $BRANCH $REPO_URL $DEPLOY_PATH
else
echo ' Pulling latest changes...'
cd $DEPLOY_PATH && git fetch origin && git checkout $BRANCH && git pull origin $BRANCH
@ -117,14 +118,14 @@ if [ "$HAS_ENV" = "no" ]; then
ssh "$USER@$HOST" "cat > $ENV_FILE << EOF
# Database
DB_PASSWORD=${DB_PASSWORD}
# JWT
JWT_SECRET=${JWT_SECRET}
# Environment
NODE_ENV=production
PORT=${PORT}
109: DB_PASSWORD=${DB_PASSWORD}
110:
111: # JWT
112: JWT_SECRET=${JWT_SECRET}
113:
114: # Environment
115: NODE_ENV=production
116: PORT=${PORT}
EOF"
echo -e "${GREEN}✓ Environment file created${NC}"
echo -e "${YELLOW}IMPORTANT: New secrets generated on $HOST.${NC}"
@ -137,17 +138,16 @@ echo ""
echo -e "${BLUE}Step 6: Deploying services...${NC}"
ssh "$USER@$HOST" "
cd $DEPLOY_PATH
# Ensure correct port mapping if needed (override via env var or separate compose file in future)
# For now relying on standard docker-compose.yml
echo ' Building containers...'
docker compose build
# Use --env-file to ensure variables are loaded
docker compose --env-file docker-compose.env build
echo ' Starting services...'
if [ "$ENV" = "preview" ]; then
docker compose -f docker-compose.yml -f docker-compose.preview.yml up -d --build
if [ \"$ENV\" = \"preview\" ]; then
docker compose --env-file docker-compose.env -f docker-compose.yml -f docker-compose.preview.yml up -d --build
else
docker compose up -d --build
docker compose --env-file docker-compose.env up -d --build
fi
"
echo -e "${GREEN}✓ Services deployed${NC}"