rdev/scripts/verify.sh
jordan 17aeb1c25b Initial commit: rdev v0.1 base case
- Dockerfile for claudebox with Claude Code CLI
- Kustomize manifests for k3s deployment
- Scripts for credentials, deploy, and verify
- README with quick start guide

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-24 19:24:07 -07:00

87 lines
2.5 KiB
Bash
Executable File

#!/bin/bash
# Verify rdev deployment
set -e
# Ensure kubeconfig is set
if [[ -z "$KUBECONFIG" ]]; then
echo "Error: KUBECONFIG not set"
echo "Run: export KUBECONFIG=~/.kube/orchard9-k3sf.yaml"
exit 1
fi
echo "=== rdev Deployment Verification ==="
echo ""
# Check namespace
echo "1. Checking namespace..."
if kubectl get namespace rdev > /dev/null 2>&1; then
echo " ✅ Namespace 'rdev' exists"
else
echo " ❌ Namespace 'rdev' not found"
exit 1
fi
# Check PVC
echo ""
echo "2. Checking PVC..."
PVC_STATUS=$(kubectl get pvc claudebox-workspace -n rdev -o jsonpath='{.status.phase}' 2>/dev/null || echo "NotFound")
if [[ "$PVC_STATUS" == "Bound" ]]; then
echo " ✅ PVC 'claudebox-workspace' is Bound"
else
echo " ⚠️ PVC status: $PVC_STATUS"
fi
# Check secret
echo ""
echo "3. Checking credentials secret..."
if kubectl get secret claude-credentials -n rdev > /dev/null 2>&1; then
echo " ✅ Secret 'claude-credentials' exists"
else
echo " ❌ Secret 'claude-credentials' not found"
echo " Run: ./scripts/create-credentials-secret.sh"
fi
# Check pod
echo ""
echo "4. Checking claudebox pod..."
POD_STATUS=$(kubectl get pod claudebox-0 -n rdev -o jsonpath='{.status.phase}' 2>/dev/null || echo "NotFound")
if [[ "$POD_STATUS" == "Running" ]]; then
echo " ✅ Pod 'claudebox-0' is Running"
else
echo " ❌ Pod status: $POD_STATUS"
if [[ "$POD_STATUS" != "NotFound" ]]; then
echo ""
echo " Pod events:"
kubectl describe pod claudebox-0 -n rdev | grep -A 10 "Events:" | head -15
fi
exit 1
fi
# Check Claude CLI
echo ""
echo "5. Checking Claude CLI..."
CLAUDE_VERSION=$(kubectl exec -n rdev claudebox-0 -- claude --version 2>/dev/null || echo "Error")
if [[ "$CLAUDE_VERSION" != "Error" ]]; then
echo " ✅ Claude CLI: $CLAUDE_VERSION"
else
echo " ❌ Claude CLI not responding"
exit 1
fi
# Test Claude (optional)
echo ""
echo "6. Testing Claude response..."
echo " Running: claude \"respond with only the word: working\""
RESPONSE=$(kubectl exec -n rdev claudebox-0 -- claude "respond with only the word: working" --print 2>/dev/null | head -5 || echo "Error")
if [[ "$RESPONSE" != "Error" ]]; then
echo " ✅ Claude responded:"
echo " $RESPONSE"
else
echo " ⚠️ Claude did not respond (may need authentication)"
echo " Check credentials: kubectl exec -n rdev claudebox-0 -- ls -la /root/.claude/"
fi
echo ""
echo "=== Verification Complete ==="