Skip to content

Latest commit

 

History

History
95 lines (65 loc) · 1.93 KB

File metadata and controls

95 lines (65 loc) · 1.93 KB

Testing dwpk Helm Chart

This document provides guidelines for testing the dwpk Helm chart. Follow these instructions to ensure the chart works as expected before deployment to production.

Steps

1. Lint Testing

# Run helm lint to check for any syntax issues
helm lint charts/dwpk

2. Template Testing

# Generate and verify the template output
helm template dwpk charts/dwpk --debug

3. Local installation testing

# Install the chart in a test namespace
kubectl create namespace dwpk-test
helm install dwpk-test charts/dwpk --namespace dwpk-test

4. Verification steps

  1. Check all pods are running:
kubectl get pods -n dwpk-test
  1. Verify services are exposed:
kubectl get svc -n dwpk-test
  1. Check UI accessibility:
kubectl port-forward svc/dwpk-test-ui 8080:8080 -n dwpk-test
  1. Validate component health:
  • manager (controller and webhooks) is ready
  • gateway accepts SSH connections
  • ui is reachable and can list images

5. Functional testing

  1. UI Login

    • Verify local auth or configured OAuth2 provider works
  2. Workspace Operations

    • Create a WorkspaceImage
    • Create a UserSpace and a Workspace
    • Connect via ssh <workspace>@<host>
  3. Integration Testing

    • Verify webhook admission (defaulting/validation/conversion)
    • Check cert-manager issued webhook certificate

6. Upgrade testing

# Test upgrade from previous version
helm upgrade dwpk-test charts/dwpk --namespace dwpk-test

7. Clean-up

# Remove test deployment
helm uninstall dwpk-test --namespace dwpk-test
kubectl delete namespace dwpk-test

Automated testing

For CI/CD pipelines, you can use the following tools:

  1. Chart Testing
  2. Helm Unit Tests

Example CI test command:

ct lint-and-install --config ct.yaml