Easy and extensible tool for any OCI supported container runtime.
Useful to run same testcases on supported runtimes.
Currently supports
- containerd
- Status : WIP
Containerdsupport is 80% completed.
 
 - Status : WIP
 - k8s CRI
- Any runtime that implementes Kubernetes Container Runtime Interface
 - Tested for cri-containerd & cri-o
 - Status : WIP
CRIsupport is 60% completed.
 
 
Usage:
 ctr-powertest -p <protocol> [-r <runtime>] <test-cases> [flags] [args]
Usage Example:
 ctr-powertest -p cri -r cri-containerd stress -t image-pull
Examples
$ sudo ./ctr-powertest -p containerd basic
INFO[0000] Running tests on containerd v1.0.0-beta.1-23-g70b353d.m
INFO[0000] TestPullContainerImage..
INFO[0000] OK..
INFO[0000] TestCreateContainers..
INFO[0000] OK..
INFO[0000] TestCreateRunningContainers..
INFO[0000] OK..
INFO[0000] TestCreateRunningNWaitContainers..
INFO[0006] OK..
$ sudo ./ctr-powertest -p cri -r cri-containerd basic
INFO[0000] Running tests on &VersionResponse{Version:0.1.0,RuntimeName:cri-containerd,RuntimeVersion:1.0.0-alpha.0-35-gd50c610-dirty,RuntimeApiVersion:0.0.0,}
INFO[0000] TestPullContainerImage..
INFO[0003] OK..
INFO[0003] TestCreateContainers..
INFO[0006] OK..
INFO[0006] TestCreateRunningContainers..
INFO[0008] OK..
INFO[0008] TestCreateRunningNWaitContainers..
INFO[0011] OK..
Usage:
$ sudo ./ctr-powertest --help
container runtime testing tool
Usage:
  ctr-powertest [flags]
  ctr-powertest [command]
Available Commands:
  basic       runs basic tests
  profile     profile container operations.
  stress      Run container tests in parallel (Stress Test)
Flags:
  -d, --debug            debug mode
  -p, --proto string     Protocol [ containerd, cri ] (default "containerd")
  -r, --runtime string   CRI-Runtime [ cri-containerd, crio ] (default "cri-containerd")
Performace test can be directly run on system by running following commands
it build and run crio & cri-containerd in docker container
(original idea cri-containerd-flame)
make crio
make cri-containerd
- All using same runc version
 
- Implement 
Execinterface for CRI and containerd. - Implement 
Wait&Killfor CRI 
Contribution , Feedback and reviews are welcome :).
