Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/errordeveloper/kube-test-env
Go library for creating Kubernetes cluster for testing
https://github.com/errordeveloper/kube-test-env
kubernetes kubernetes-cluster kubernetes-test-env kubernetes-testing
Last synced: 14 days ago
JSON representation
Go library for creating Kubernetes cluster for testing
- Host: GitHub
- URL: https://github.com/errordeveloper/kube-test-env
- Owner: errordeveloper
- License: other
- Created: 2023-12-05T15:28:17.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2024-01-29T16:49:22.000Z (11 months ago)
- Last Synced: 2024-11-01T14:11:52.738Z (2 months ago)
- Topics: kubernetes, kubernetes-cluster, kubernetes-test-env, kubernetes-testing
- Language: Go
- Homepage:
- Size: 110 KB
- Stars: 1
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# `kube-test-env` (KTE)
KTE is a Go library that makes it very easy to create a Kubernetes cluster from testing, so all you need do is run `go test`.
It avoids having to have shell scripts that manage kind clusters. Presently it implements only one provider - kind,
it may include other options in the future.KTE does not require `kind` CLI installed, it just needs Docker.
It's common for test infra to be configured before tests run, that approach suffers from the following:
- setup contract is not explicit, it's often done via shell scripts and not an API
- lack of abstraction makes it harder to migrate between infra providers
- incidental features easy to add in a shell script
- the lifecycle of the infra is not bound to test runs
- left-over state
- test scenarios cannot define infra scale or isolation requirements
- configuration of the infra may not match expectations of the tests
- leads to uncertainty and poor reliability
- it's hard to evolve infra needs as tests evolve