ork e2e
Run declarative end-to-end tests against a real cluster.
ork e2e
ork e2e -f e2e.yaml
ork e2e --keep-cluster
ork e2e --cluster my-dev-context
--file defaults to e2e.yaml in the current directory. ork e2e is the complement to ork simulate — it runs against a real kind cluster, applying the full operator lifecycle and verifying that resources reach the expected state. The same command runs locally and in CI.
Flags
| Flag | Short | Default | Description |
|---|---|---|---|
--file | -f | e2e.yaml | Path to the E2E spec file |
--keep-cluster | false | Keep the kind cluster after the test completes | |
--cluster | (create new) | Use an existing kubectl context instead of creating a cluster | |
--use-current | false | Use the current kubeconfig context (equivalent to --cluster $(kubectl config current-context)) |
What it does
1. kind cluster created (or existing context selected)
2. CRD applied
3. setup.apply — prerequisite manifests applied (if declared)
4. setup.helm — prerequisite charts installed (if declared)
5. setup.wait — blocks until prerequisites exist/ready (if declared)
6. Katalog loaded — operator starts
7. CR applied
8. Expect checkpoints polled (cr-applied)
9. CR deleted
10. Expect checkpoints polled (cr-deleted)
11. Helm uninstall, bundle delete, setup manifests removed
12. Cluster deleted (unless --keep-cluster)
Examples
# Run e2e using e2e.yaml in the current directory
ork e2e
# Run a specific spec file
ork e2e -f examples/beginner/03-secret-copy/e2e.yaml
# Keep the cluster for debugging after the test
ork e2e --keep-cluster
# Run against an existing cluster
ork e2e --cluster my-dev-context
# Validate the spec before running (no cluster needed)
ork validate -f e2e.yaml
Quick start
ork init --pack beginner
cd beginner/01-hello-website
ork e2e
Output
Pass:
Running E2E: hello-website-e2e
→ Applying setup...
✓ Applied
→ Waiting for Secret my-secret (default)...
✓ Ready
→ Applying CR...
✓ CR applied
✓ Deployment ready (12s)
✓ Cleanup verified (5s)
PASS hello-website-e2e (87s)
Fail (timeout):
✗ Deployment ready TIMEOUT after 60s
Deployment hello-website not found in default
FAIL hello-website-e2e (62s)