fix: Update Dockerfiles to use ci.nxtgauge.com registry
Some checks failed
build-and-release / build (companies) (push) Failing after 39s
build-and-release / build (catering-services) (push) Failing after 57s
build-and-release / build (cron) (push) Failing after 1m4s
build-and-release / build (gateway) (push) Successful in 3m46s
build-and-release / build (fitness-trainers) (push) Successful in 9m8s
build-and-release / build (graphic-designers) (push) Successful in 8m58s
build-and-release / build (employees) (push) Successful in 9m17s
build-and-release / build (customers) (push) Successful in 9m47s
build-and-release / build (developers) (push) Successful in 9m48s
build-and-release / build (job-seekers) (push) Successful in 9m1s
build-and-release / build (jobs) (push) Successful in 4m17s
build-and-release / build (leads) (push) Successful in 8m23s
build-and-release / build (makeup-artists) (push) Successful in 8m40s
build-and-release / build (payments) (push) Successful in 9m21s
build-and-release / build (photographers) (push) Successful in 9m20s
build-and-release / build (social-media-managers) (push) Successful in 8m9s
build-and-release / build (tutors) (push) Successful in 8m16s
build-and-release / build (ugc-content-creators) (push) Successful in 6m59s
build-and-release / build (video-editors) (push) Successful in 6m9s
build-and-release / build (users) (push) Successful in 8m37s

This commit is contained in:
Ashwin Kumar Sivakumar 2026-07-08 03:37:18 +05:30
parent 8a8372850f
commit f7d0f6f9f5
30 changed files with 236 additions and 50 deletions

79
.env.test111 Normal file
View file

@ -0,0 +1,79 @@
# Nxtgauge Backend — Environment Variables for test111.nxtgauge.com
# Copy this file to .env and fill in the actual values.
# ── Database ─────────────────────────────────────────────────────────────────
POSTGRES_PASSWORD=nxtgauge_dev
DATABASE_URL=postgresql://nxtgauge:nxtgauge_dev@localhost:5432/nxtgauge_db
# ── Auth ──────────────────────────────────────────────────────────────────────
# Generate with: openssl rand -base64 64
JWT_SECRET=change-me-to-a-secure-random-string-of-at-least-64-chars
JWT_EXPIRY_MINUTES=15
REFRESH_TOKEN_EXPIRY_DAYS=30
# ── SMTP (ZeptoMail/Zoho) ──────────────────────────────────────────────────
# These are the ZeptoMail configuration values for sending emails
# Username is always "emailapikey" for ZeptoMail SMTP
# Password is your ZeptoMail API key
EMAIL_PROVIDER=SMTP
SMTP_HOST=smtp.zeptomail.in
SMTP_PORT=587
SMTP_USER=emailapikey
SMTP_PASS=PHtE6r1ZR+zi3jV88RNW4/O4F8CkPdksqO9iJAhA4YcTD6dQFk1S+dl/wDC3/h97AKYWFfSczo1rt72etOuDLTnrMjlEDWqyqK3sx/VYSPOZsbq6x00esVgYdEfYVYDpcNFj3SPQut7dNA==
SMTP_FROM_EMAIL=support@nxtgauge.com
SMTP_FROM_NAME=NXTGAUGE
SMTP_SECURE=true
SMTP_REPLY_TO=support@nxtgauge.com
# ── Demo Account Emails (comma-separated) ───────────────────────────────────
# These emails bypass email verification (for testing)
DEMO_ACCOUNT_EMAILS=test@example.com,demo@nxtgauge.com
# ── Object Storage (Backblaze B2 S3-Compatible) ─────────────────────────────
B2_BUCKET_NAME=Nxtgauge-object
B2_REGION=eu-central-003
B2_ENDPOINT=https://s3.eu-central-003.backblazeb2.com
B2_ACCESS_KEY_ID=replace-with-b2-key-id
B2_SECRET_ACCESS_KEY=replace-with-b2-secret
B2_USE_PATH_STYLE=true
# ── Payments ──────────────────────────────────────────────────────────────────
RAZORPAY_KEY_ID=rzp_test_...
RAZORPAY_KEY_SECRET=...
# ── Frontend ──────────────────────────────────────────────────────────────────
FRONTEND_URL=https://test111.nxtgauge.com
ADMIN_URL=https://admin.test111.nxtgauge.com
# ── Service Ports (local development, for running services individually) ──────
GATEWAY_PORT=9100
USERS_PORT=9101
COMPANIES_PORT=9102
JOB_SEEKERS_PORT=9104
CUSTOMERS_PORT=9105
PHOTOGRAPHERS_PORT=9107
MAKEUP_ARTISTS_PORT=9109
TUTORS_PORT=9108
DEVELOPERS_PORT=9110
VIDEO_EDITORS_PORT=9111
GRAPHIC_DESIGNERS_PORT=9112
SOCIAL_MEDIA_MANAGERS_PORT=9113
FITNESS_TRAINERS_PORT=9114
CATERING_SERVICES_PORT=9115
PAYMENTS_PORT=9116
# ── Service URLs (used by gateway — override only for non-Docker dev) ─────────
USERS_SERVICE_URL=http://localhost:9101
COMPANIES_SERVICE_URL=http://localhost:9102
JOB_SEEKERS_SERVICE_URL=http://localhost:9104
CUSTOMERS_SERVICE_URL=http://localhost:9105
PHOTOGRAPHERS_SERVICE_URL=http://localhost:9107
MAKEUP_ARTISTS_SERVICE_URL=http://localhost:9109
TUTORS_SERVICE_URL=http://localhost:9108
DEVELOPERS_SERVICE_URL=http://localhost:9110
VIDEO_EDITORS_SERVICE_URL=http://localhost:9111
GRAPHIC_DESIGNERS_SERVICE_URL=http://localhost:9112
SOCIAL_MEDIA_MANAGERS_SERVICE_URL=http://localhost:9113
FITNESS_TRAINERS_SERVICE_URL=http://localhost:9114
CATERING_SERVICES_SERVICE_URL=http://localhost:9115
PAYMENTS_SERVICE_URL=http://localhost:9116

View file

@ -1,7 +1,7 @@
# Base image with all dependencies pre-compiled
# Build once, use for all services
FROM registry.nxtgauge.com/rust:alpine AS chef
FROM ci.nxtgauge.com/admin/rust:alpine AS chef
RUN apk add --no-cache musl-dev pkgconfig openssl-dev && \
rustup target add x86_64-unknown-linux-musl && \
cargo install cargo-chef

View file

@ -2,7 +2,7 @@
# Build: docker build --build-arg SERVICE_NAME=users -f Dockerfile.fast .
# Stage 1: Chef - Prepare dependency recipe
FROM registry.nxtgauge.com/rust:alpine AS chef
FROM ci.nxtgauge.com/admin/rust:alpine AS chef
RUN apk add --no-cache musl-dev pkgconfig openssl-dev && \
rustup target add x86_64-unknown-linux-musl && \
cargo install cargo-chef

View file

@ -1,4 +1,4 @@
FROM registry.nxtgauge.com/rust:alpine AS builder
FROM ci.nxtgauge.com/admin/rust:alpine AS builder
WORKDIR /app
@ -19,7 +19,7 @@ ENV OPENSSL_STATIC=1
ENV OPENSSL_DIR=/usr
RUN cargo build --release --bin db-migrate --target x86_64-unknown-linux-musl
FROM registry.nxtgauge.com/alpine:3.20
FROM ci.nxtgauge.com/admin/alpine:3.20
RUN apk add --no-cache ca-certificates libpq
COPY --from=builder /app/crates/db-migrate/target/x86_64-unknown-linux-musl/release/db-migrate /usr/local/bin/

View file

@ -2,7 +2,7 @@
# Usage: docker build --build-arg SERVICE_NAME=gateway -t nxtgauge-gateway .
# Stage 1: Base builder with dependencies cached
FROM registry.nxtgauge.com/rust:alpine AS chef
FROM ci.nxtgauge.com/admin/rust:alpine AS chef
RUN apk add --no-cache musl-dev pkgconfig openssl-dev ca-certificates && \
rustup target add x86_64-unknown-linux-musl && \
cargo install cargo-chef

View file

@ -5,7 +5,7 @@ ARG SERVICE_NAME
# Stage 1: Use pre-built base with all dependencies cached
# Build base with: docker build -f Dockerfile.base -t registry.nxtgauge.com/nxtgauge-rust-base:latest .
FROM registry.nxtgauge.com/nxtgauge-rust-base:latest AS builder
FROM ci.nxtgauge.com/admin/nxtgauge-rust-base:latest AS builder
ARG SERVICE_NAME
WORKDIR /app

View file

@ -1,5 +1,5 @@
# Build stage
FROM registry.nxtgauge.com/rust:alpine AS builder
FROM ci.nxtgauge.com/admin/rust:alpine AS builder
WORKDIR /usr/src/app
@ -17,7 +17,7 @@ ENV RUSTFLAGS='-C target-feature=+crt-static'
RUN cargo build --release --bin ${BIN_NAME} --target x86_64-unknown-linux-musl
# Runtime stage - minimal Alpine
FROM registry.nxtgauge.com/alpine:latest AS runtime
FROM ci.nxtgauge.com/admin/alpine:latest AS runtime
# Install CA certificates only
RUN apk add --no-cache ca-certificates

View file

@ -5,7 +5,7 @@
ARG SERVICE_NAME
# Use the pre-built base image with all dependencies cached
FROM registry.nxtgauge.com/nxtgauge-rust-base:latest AS builder
FROM ci.nxtgauge.com/admin/nxtgauge-rust-base:latest AS builder
ARG SERVICE_NAME
WORKDIR /app

View file

@ -1,5 +1,5 @@
# Simple fast Dockerfile - preserves full workspace
FROM registry.nxtgauge.com/rust:alpine AS builder
FROM ci.nxtgauge.com/admin/rust:alpine AS builder
# Install build deps
RUN apk add --no-cache curl ca-certificates bash build-base musl-dev pkgconfig openssl-dev openssl-libs-static

View file

@ -1,4 +1,4 @@
FROM registry.nxtgauge.com/rust:alpine AS builder
FROM ci.nxtgauge.com/admin/rust:alpine AS builder
WORKDIR /usr/src/app
@ -14,7 +14,7 @@ ENV OPENSSL_STATIC=1
ENV OPENSSL_DIR=/usr
RUN cargo build --release --bin catering_services --target x86_64-unknown-linux-musl
FROM registry.nxtgauge.com/alpine:latest AS runtime
FROM ci.nxtgauge.com/admin/alpine:latest AS runtime
RUN apk add --no-cache ca-certificates

View file

@ -1,4 +1,4 @@
FROM registry.nxtgauge.com/rust:alpine AS builder
FROM ci.nxtgauge.com/admin/rust:alpine AS builder
WORKDIR /usr/src/app
@ -14,7 +14,7 @@ ENV OPENSSL_STATIC=1
ENV OPENSSL_DIR=/usr
RUN cargo build --release --bin companies --target x86_64-unknown-linux-musl
FROM registry.nxtgauge.com/alpine:latest AS runtime
FROM ci.nxtgauge.com/admin/alpine:latest AS runtime
RUN apk add --no-cache ca-certificates

View file

@ -1,4 +1,4 @@
FROM registry.nxtgauge.com/rust:alpine AS builder
FROM ci.nxtgauge.com/admin/rust:alpine AS builder
WORKDIR /usr/src/app
@ -14,7 +14,7 @@ ENV OPENSSL_STATIC=1
ENV OPENSSL_DIR=/usr
RUN cargo build --release --bin cron --target x86_64-unknown-linux-musl
FROM registry.nxtgauge.com/alpine:latest AS runtime
FROM ci.nxtgauge.com/admin/alpine:latest AS runtime
RUN apk add --no-cache ca-certificates

View file

@ -1,4 +1,4 @@
FROM registry.nxtgauge.com/rust:alpine AS builder
FROM ci.nxtgauge.com/admin/rust:alpine AS builder
WORKDIR /usr/src/app
@ -14,7 +14,7 @@ ENV OPENSSL_STATIC=1
ENV OPENSSL_DIR=/usr
RUN cargo build --release --bin customers --target x86_64-unknown-linux-musl
FROM registry.nxtgauge.com/alpine:latest AS runtime
FROM ci.nxtgauge.com/admin/alpine:latest AS runtime
RUN apk add --no-cache ca-certificates

View file

@ -1,4 +1,4 @@
FROM registry.nxtgauge.com/rust:alpine AS builder
FROM ci.nxtgauge.com/admin/rust:alpine AS builder
WORKDIR /usr/src/app
@ -14,7 +14,7 @@ ENV OPENSSL_STATIC=1
ENV OPENSSL_DIR=/usr
RUN cargo build --release --bin developers --target x86_64-unknown-linux-musl
FROM registry.nxtgauge.com/alpine:latest AS runtime
FROM ci.nxtgauge.com/admin/alpine:latest AS runtime
RUN apk add --no-cache ca-certificates

View file

@ -1,4 +1,4 @@
FROM registry.nxtgauge.com/rust:alpine AS builder
FROM ci.nxtgauge.com/admin/rust:alpine AS builder
WORKDIR /usr/src/app
@ -14,7 +14,7 @@ ENV OPENSSL_STATIC=1
ENV OPENSSL_DIR=/usr
RUN cargo build --release --bin employees --target x86_64-unknown-linux-musl
FROM registry.nxtgauge.com/alpine:latest AS runtime
FROM ci.nxtgauge.com/admin/alpine:latest AS runtime
RUN apk add --no-cache ca-certificates

View file

@ -1,4 +1,4 @@
FROM registry.nxtgauge.com/rust:alpine AS builder
FROM ci.nxtgauge.com/admin/rust:alpine AS builder
WORKDIR /usr/src/app
@ -14,7 +14,7 @@ ENV OPENSSL_STATIC=1
ENV OPENSSL_DIR=/usr
RUN cargo build --release --bin fitness_trainers --target x86_64-unknown-linux-musl
FROM registry.nxtgauge.com/alpine:latest AS runtime
FROM ci.nxtgauge.com/admin/alpine:latest AS runtime
RUN apk add --no-cache ca-certificates

View file

@ -1,4 +1,4 @@
FROM registry.nxtgauge.com/rust:alpine AS builder
FROM ci.nxtgauge.com/admin/rust:alpine AS builder
WORKDIR /usr/src/app
@ -16,7 +16,7 @@ ENV OPENSSL_STATIC=1
ENV OPENSSL_DIR=/usr
RUN cargo build --release --bin gateway --target x86_64-unknown-linux-musl
FROM registry.nxtgauge.com/alpine:latest AS runtime
FROM ci.nxtgauge.com/admin/alpine:latest AS runtime
RUN apk add --no-cache ca-certificates

View file

@ -1,4 +1,4 @@
FROM registry.nxtgauge.com/rust:alpine AS builder
FROM ci.nxtgauge.com/admin/rust:alpine AS builder
WORKDIR /usr/src/app
@ -14,7 +14,7 @@ ENV OPENSSL_STATIC=1
ENV OPENSSL_DIR=/usr
RUN cargo build --release --bin graphic_designers --target x86_64-unknown-linux-musl
FROM registry.nxtgauge.com/alpine:latest AS runtime
FROM ci.nxtgauge.com/admin/alpine:latest AS runtime
RUN apk add --no-cache ca-certificates

View file

@ -1,4 +1,4 @@
FROM registry.nxtgauge.com/rust:alpine AS builder
FROM ci.nxtgauge.com/admin/rust:alpine AS builder
WORKDIR /usr/src/app
@ -14,7 +14,7 @@ ENV OPENSSL_STATIC=1
ENV OPENSSL_DIR=/usr
RUN cargo build --release --bin job_seekers --target x86_64-unknown-linux-musl
FROM registry.nxtgauge.com/alpine:latest AS runtime
FROM ci.nxtgauge.com/admin/alpine:latest AS runtime
RUN apk add --no-cache ca-certificates

View file

@ -1,4 +1,4 @@
FROM registry.nxtgauge.com/rust:alpine AS builder
FROM ci.nxtgauge.com/admin/rust:alpine AS builder
WORKDIR /usr/src/app
@ -14,7 +14,7 @@ ENV OPENSSL_STATIC=1
ENV OPENSSL_DIR=/usr
RUN cargo build --release --bin jobs --target x86_64-unknown-linux-musl
FROM registry.nxtgauge.com/alpine:latest AS runtime
FROM ci.nxtgauge.com/admin/alpine:latest AS runtime
RUN apk add --no-cache ca-certificates

View file

@ -1,4 +1,4 @@
FROM registry.nxtgauge.com/rust:alpine AS builder
FROM ci.nxtgauge.com/admin/rust:alpine AS builder
WORKDIR /usr/src/app
@ -14,7 +14,7 @@ ENV OPENSSL_STATIC=1
ENV OPENSSL_DIR=/usr
RUN cargo build --release --bin leads --target x86_64-unknown-linux-musl
FROM registry.nxtgauge.com/alpine:latest AS runtime
FROM ci.nxtgauge.com/admin/alpine:latest AS runtime
RUN apk add --no-cache ca-certificates

View file

@ -1,4 +1,4 @@
FROM registry.nxtgauge.com/rust:alpine AS builder
FROM ci.nxtgauge.com/admin/rust:alpine AS builder
WORKDIR /usr/src/app
@ -14,7 +14,7 @@ ENV OPENSSL_STATIC=1
ENV OPENSSL_DIR=/usr
RUN cargo build --release --bin makeup_artists --target x86_64-unknown-linux-musl
FROM registry.nxtgauge.com/alpine:latest AS runtime
FROM ci.nxtgauge.com/admin/alpine:latest AS runtime
RUN apk add --no-cache ca-certificates

View file

@ -1,4 +1,4 @@
FROM registry.nxtgauge.com/rust:alpine AS builder
FROM ci.nxtgauge.com/admin/rust:alpine AS builder
WORKDIR /usr/src/app
@ -14,7 +14,7 @@ ENV OPENSSL_STATIC=1
ENV OPENSSL_DIR=/usr
RUN cargo build --release --bin payments --target x86_64-unknown-linux-musl
FROM registry.nxtgauge.com/alpine:latest AS runtime
FROM ci.nxtgauge.com/admin/alpine:latest AS runtime
RUN apk add --no-cache ca-certificates

View file

@ -1,4 +1,4 @@
FROM registry.nxtgauge.com/rust:alpine AS builder
FROM ci.nxtgauge.com/admin/rust:alpine AS builder
WORKDIR /usr/src/app
@ -14,7 +14,7 @@ ENV OPENSSL_STATIC=1
ENV OPENSSL_DIR=/usr
RUN cargo build --release --bin photographers --target x86_64-unknown-linux-musl
FROM registry.nxtgauge.com/alpine:latest AS runtime
FROM ci.nxtgauge.com/admin/alpine:latest AS runtime
RUN apk add --no-cache ca-certificates

View file

@ -1,4 +1,4 @@
FROM registry.nxtgauge.com/rust:alpine AS builder
FROM ci.nxtgauge.com/admin/rust:alpine AS builder
WORKDIR /usr/src/app
@ -14,7 +14,7 @@ ENV OPENSSL_STATIC=1
ENV OPENSSL_DIR=/usr
RUN cargo build --release --bin social_media_managers --target x86_64-unknown-linux-musl
FROM registry.nxtgauge.com/alpine:latest AS runtime
FROM ci.nxtgauge.com/admin/alpine:latest AS runtime
RUN apk add --no-cache ca-certificates

View file

@ -1,4 +1,4 @@
FROM registry.nxtgauge.com/rust:alpine AS builder
FROM ci.nxtgauge.com/admin/rust:alpine AS builder
WORKDIR /usr/src/app
@ -14,7 +14,7 @@ ENV OPENSSL_STATIC=1
ENV OPENSSL_DIR=/usr
RUN cargo build --release --bin tutors --target x86_64-unknown-linux-musl
FROM registry.nxtgauge.com/alpine:latest AS runtime
FROM ci.nxtgauge.com/admin/alpine:latest AS runtime
RUN apk add --no-cache ca-certificates

View file

@ -1,4 +1,4 @@
FROM registry.nxtgauge.com/rust:alpine AS builder
FROM ci.nxtgauge.com/admin/rust:alpine AS builder
WORKDIR /usr/src/app
@ -14,7 +14,7 @@ ENV OPENSSL_STATIC=1
ENV OPENSSL_DIR=/usr
RUN cargo build --release --bin ugc_content_creators --target x86_64-unknown-linux-musl
FROM registry.nxtgauge.com/alpine:latest AS runtime
FROM ci.nxtgauge.com/admin/alpine:latest AS runtime
RUN apk add --no-cache ca-certificates

View file

@ -1,4 +1,4 @@
FROM registry.nxtgauge.com/rust:alpine AS builder
FROM ci.nxtgauge.com/admin/rust:alpine AS builder
WORKDIR /usr/src/app
@ -14,7 +14,7 @@ ENV OPENSSL_STATIC=1
ENV OPENSSL_DIR=/usr
RUN cargo build --release --bin users --target x86_64-unknown-linux-musl
FROM registry.nxtgauge.com/alpine:latest AS runtime
FROM ci.nxtgauge.com/admin/alpine:latest AS runtime
RUN apk add --no-cache ca-certificates

View file

@ -1,4 +1,4 @@
FROM registry.nxtgauge.com/rust:alpine AS builder
FROM ci.nxtgauge.com/admin/rust:alpine AS builder
WORKDIR /usr/src/app
@ -14,7 +14,7 @@ ENV OPENSSL_STATIC=1
ENV OPENSSL_DIR=/usr
RUN cargo build --release --bin video_editors --target x86_64-unknown-linux-musl
FROM registry.nxtgauge.com/alpine:latest AS runtime
FROM ci.nxtgauge.com/admin/alpine:latest AS runtime
RUN apk add --no-cache ca-certificates

107
scripts/deploy-smtp-test111.sh Executable file
View file

@ -0,0 +1,107 @@
#!/bin/bash
# Deploy environment variables to test111.nxtgauge.com
# This script updates the Kubernetes ConfigMap or Docker environment
set -e
echo "=== Nxtgauge Test111 Environment Setup ==="
echo ""
# Configuration
NAMESPACE="nxtgauge"
CONFIGMAP_NAME="nxtgauge-config"
SECRET_NAME="nxtgauge-secrets"
DEPLOYMENT_NAME="nxtgauge-rust-gateway"
# Colors for output
RED='\033[0;31m'
GREEN='\033[0;32m'
YELLOW='\033[1;33m'
NC='\033[0m' # No Color
echo -e "${YELLOW}Step 1: Checking kubectl access...${NC}"
if ! kubectl cluster-info > /dev/null 2>&1; then
echo -e "${RED}Error: Cannot connect to Kubernetes cluster${NC}"
echo "Please ensure:"
echo " 1. kubectl is installed"
echo " 2. You have access to the test111 cluster"
echo " 3. Your kubeconfig is properly set up"
exit 1
fi
echo -e "${GREEN}✓ Kubernetes cluster accessible${NC}"
echo ""
echo -e "${YELLOW}Step 2: Checking namespace...${NC}"
if ! kubectl get namespace "$NAMESPACE" > /dev/null 2>&1; then
echo -e "${RED}Error: Namespace '$NAMESPACE' not found${NC}"
exit 1
fi
echo -e "${GREEN}✓ Namespace '$NAMESPACE' exists${NC}"
echo ""
echo -e "${YELLOW}Step 3: Creating/updating ConfigMap with SMTP settings...${NC}"
# Create ConfigMap with SMTP configuration
cat <<EOF | kubectl apply -f -
apiVersion: v1
kind: ConfigMap
metadata:
name: $CONFIGMAP_NAME
namespace: $NAMESPACE
data:
EMAIL_PROVIDER: "SMTP"
SMTP_HOST: "smtp.zeptomail.in"
SMTP_PORT: "587"
SMTP_USER: "emailapikey"
SMTP_FROM_EMAIL: "support@nxtgauge.com"
SMTP_FROM_NAME: "NXTGAUGE"
SMTP_SECURE: "true"
FRONTEND_URL: "https://test111.nxtgauge.com"
ADMIN_URL: "https://admin.test111.nxtgauge.com"
EOF
echo -e "${GREEN}✓ ConfigMap updated${NC}"
echo ""
echo -e "${YELLOW}Step 4: Creating/updating Secret with SMTP credentials...${NC}"
# ZeptoMail credentials
SMTP_PASS="PHtE6r1ZR+zi3jV88RNW4/O4F8CkPdksqO9iJAhA4YcTD6dQFk1S+dl/wDC3/h97AKYWFfSczo1rt72etOuDLTnrMjlEDWqyqK3sx/VYSPOZsbq6x00esVgYdEfYVYDpcNFj3SPQut7dNA=="
# Prompt for Demo account emails
read -p "Enter Demo Account Emails (comma-separated, press Enter for default): " DEMO_EMAILS
DEMO_EMAILS=${DEMO_EMAILS:-"test@example.com,demo@nxtgauge.com"}
# Create Secret
kubectl create secret generic "$SECRET_NAME" \
--namespace="$NAMESPACE" \
--from-literal=SMTP_PASS="$SMTP_PASS" \
--from-literal=DEMO_ACCOUNT_EMAILS="$DEMO_EMAILS" \
--dry-run=client -o yaml | kubectl apply -f -
echo "✓ SMTP credentials configured (ZeptoMail)"
echo -e "${GREEN}✓ Secret updated${NC}"
echo ""
echo -e "${YELLOW}Step 5: Restarting deployment to apply changes...${NC}"
kubectl rollout restart deployment/$DEPLOYMENT_NAME -n $NAMESPACE
echo -e "${GREEN}✓ Deployment restarted${NC}"
echo ""
echo -e "${YELLOW}Step 6: Waiting for rollout to complete...${NC}"
if kubectl rollout status deployment/$DEPLOYMENT_NAME -n $NAMESPACE --timeout=120s; then
echo -e "${GREEN}✓ Rollout completed successfully${NC}"
else
echo -e "${RED}Warning: Rollout may not have completed within timeout${NC}"
fi
echo ""
echo "=== Setup Complete ==="
echo ""
echo "Email verification is now: ENABLED"
echo "SMTP Provider: ZeptoMail (smtp.zeptomail.in)"
echo "Demo Accounts (bypass verification): $DEMO_EMAILS"
echo ""
echo "To verify email is working, check logs:"
echo " kubectl logs -f deployment/$DEPLOYMENT_NAME -n $NAMESPACE | grep -i email"