2026-01-08 04:00:41 +00:00
|
|
|
#!/bin/bash
|
2026-01-08 15:49:32 +00:00
|
|
|
# Quick deploy to k3s
|
2026-01-08 04:00:41 +00:00
|
|
|
set -e
|
|
|
|
|
|
2026-01-08 15:49:32 +00:00
|
|
|
SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)"
|
|
|
|
|
PROJECT_ROOT="$(cd "$SCRIPT_DIR/../.." && pwd)"
|
2026-01-08 04:00:41 +00:00
|
|
|
|
2026-01-08 15:49:32 +00:00
|
|
|
echo "=== Building Docker images ==="
|
|
|
|
|
cd "$PROJECT_ROOT"
|
2026-01-08 04:00:41 +00:00
|
|
|
|
2026-01-08 15:49:32 +00:00
|
|
|
# Build API
|
|
|
|
|
docker build -t student-enrollment-api:latest -f deploy/docker/Dockerfile.api .
|
2026-01-08 04:00:41 +00:00
|
|
|
|
2026-01-08 15:49:32 +00:00
|
|
|
# Build Frontend
|
|
|
|
|
docker build -t student-enrollment-frontend:latest -f deploy/docker/Dockerfile.frontend .
|
2026-01-08 04:00:41 +00:00
|
|
|
|
2026-01-08 15:49:32 +00:00
|
|
|
echo "=== Deploying to k3s ==="
|
|
|
|
|
kubectl apply -f "$SCRIPT_DIR/all-in-one.yaml"
|
2026-01-08 04:00:41 +00:00
|
|
|
|
2026-01-08 15:49:32 +00:00
|
|
|
echo "=== Waiting for deployments ==="
|
|
|
|
|
kubectl -n student-enrollment rollout status deployment/mssql --timeout=120s
|
|
|
|
|
kubectl -n student-enrollment rollout status deployment/api --timeout=120s
|
|
|
|
|
kubectl -n student-enrollment rollout status deployment/frontend --timeout=60s
|
2026-01-08 04:00:41 +00:00
|
|
|
|
2026-01-08 15:49:32 +00:00
|
|
|
echo "=== Deployment complete ==="
|
|
|
|
|
echo "Add to /etc/hosts: <k3s-ip> students.local"
|
|
|
|
|
kubectl -n student-enrollment get pods
|