ork e2e

2 min read

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

FlagShortDefaultDescription
--file-fe2e.yamlPath to the E2E spec file
--keep-clusterfalseKeep the kind cluster after the test completes
--cluster(create new)Use an existing kubectl context instead of creating a cluster
--use-currentfalseUse 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)

E2E spec reference

documentation/reference/schema/04-e2e/