A simple read-only dashboard for real-time TestKube results.
The TestKube Dashboard is deployed as a standalone web application in a cluster running TestKube. It runs in the browser and communicates with the TestKube api-server via an Ingress controller (either provided or bundled):
Available operations for the api-server are in its OpenAPI Definition
During development one can bypass the Ingress and interact with the api-server directly:
- Install TestKube in your cluster - see TestKube Installation
- Expose the api-server with
kubectl-testkube dashboard
(here we're exposing the testkube-api-server running in the TestKube namespace on port 8080 locally)
Package this into a Docker image using the provided Dockerfile with
docker build -t kubeshop/testkube-dashboard .
Run locally on port 3001 with
docker run -it -p 3001:80 kubeshop/testkube-dashboard:latest
Push to DockerHub
docker push testkube/testkube-dashboard
Deploy the included manifest to your cluster:
kubectl apply -f manifests/deployment.yaml
Access using port-forwarding :
kubectl port-forward service/testkube-dashboard 8080:80
(this example forwards on port 8080)
This project was bootstrapped with Create React App, using the Redux and Redux Toolkit template.
Eslint/Prettier/Husky/Craco/etc configuration was copied from Monokle project
In order to be able to run this application locally without docker, just close this repo and then let the magic start :fireworks: :tada:
git clone [email protected]:kubeshop/testkube-dashboard.git && cd kubetest-dashboard
npm install
npm run start
To be able to run the application with mocked data, you just need to switch commands and use:
npm run start:mock-app
After this, you should get an open navigator with the link: http://localhost:3000/
.
Command | description |
---|---|
npm run lint |
lint project |
npm run lintfix |
fix lint of the project |
npm run stylelint |
fix styles of the project |
npm run start |
start the app |
npm run test |
run test of the app |
npm run test:watch |
watch jest test |
npm run test:coverage |
run test coverage |
npm run test:update |
run coverage update |
npm run build |
build the app under build folder |
This application is deployed with Netlify where you can see it live using under this 🔗 TestKube-dashboard .