Deploying Locally

Use Helm and Kubernetes to stand up a local test harness environment.

Prerequisites

Before deploying AI Test Harness locally, ensure you have:

  • Kubernetes cluster (Docker Desktop, minikube, or kind)
  • kubectl configured to access your cluster
  • Helm 3.x installed
  • At least 8GB RAM and 4 CPU cores available

Step 1: Install Platform Services

Deploy the platform using Helm:

bash
# Add the AI Test Harness Helm repository
helm repo add ai-test-harness https://charts.aitestharness.com
helm repo update

# Install with default configuration
helm upgrade --install ai-test-harness ai-test-harness/platform \
  --namespace ai-test-harness \
  --create-namespace \
  --wait

Step 2: Verify Installation

Check that all pods are running:

bash
kubectl get pods -n ai-test-harness

# Expected output:
NAME                              READY   STATUS    AGE
control-plane-6f8d9c7b5d-xyz      2/2     Running   2m
agent-runtime-5c4b8d9f7a-abc      3/3     Running   2m
execution-engine-7d6c5b8a4f-def   2/2     Running   2m
analytics-worker-4a9b7c6d5e-ghi   2/2     Running   2m
postgresql-0                      1/1     Running   2m
redis-0                           1/1     Running   2m
kafka-0                           1/1     Running   2m

Step 3: Access Control Plane

Port-forward the control plane API to your local machine:

bash
kubectl port-forward -n ai-test-harness service/control-plane 8080:80

# Control plane API now available at http://localhost:8080

Step 4: Configure Authentication

Create an API key for local development:

bash
# Create API key
curl -X POST http://localhost:8080/api/v1/auth/keys \
  -H "Content-Type: application/json" \
  -d '{
    "name": "local-dev",
    "scope": ["agent:read", "agent:write", "execution:read", "execution:write"]
  }'

# Save the returned API key
export AI_TEST_HARNESS_API_KEY="ath_xxx...xxx"

Step 5: Access Dashboard

Port-forward the dashboard service:

bash
kubectl port-forward -n ai-test-harness service/dashboard 3000:80

# Open browser to http://localhost:3000
# Login with API key or create a user account

Configuration Options

Customize deployment with Helm values:

bash
# Create custom values file
cat > custom-values.yaml <<EOF
controlPlane:
  replicas: 1
  resources:
    requests:
      memory: "512Mi"
      cpu: "500m"

agentRuntime:
  replicas: 2
  quotas:
    maxAgents: 10

executionEngine:
  parallelism: 5
  browsers:
    - chromium
    - firefox

postgresql:
  persistence:
    enabled: false  # Use in-memory for dev

redis:
  persistence:
    enabled: false
EOF

# Install with custom values
helm upgrade --install ai-test-harness ai-test-harness/platform \
  -f custom-values.yaml \
  -n ai-test-harness

Troubleshooting

Common issues and solutions:

Pods not starting

bash
# Check pod logs
kubectl logs -n ai-test-harness <pod-name>

# Check events
kubectl get events -n ai-test-harness --sort-by='.lastTimestamp'

Insufficient resources

Increase Docker Desktop resources or use minimal configuration with fewer replicas.

Connection refused

Ensure port-forward is running and nothing else is using the target port.

Next Steps

Once all services are healthy:

  1. Register your application environment
  2. Configure agent permissions and quotas
  3. Create your first test plan
  4. Run test executions
  5. View analytics and failure intelligence