Simple idea of having a web app that will show SwaggerUI for list of configured specs. API specifications could come from different places: manifest file, or Kubernetes ConfigMaps, or Kubernetes Koap CRDs.
- UI to navigate through different OpenAPI and Swagger Specs
- Backend service to host UI and gather configured API Specs
- Listen to Kubernetes for ConfigMaps with API Manifiests
- Support Kubernetes Koap CRDs
- Support Service/Deployment/POD annotations with API Specs
- Support to limit Koap to the single Kubernetes namespace
- Install KOAP to your Kuberntes cluster KOAP will use in-cluster auth to Kubernetes API.
- Create few ConfigMaps with API Manifests (example)
- Enjoy
- Run
docker run -it -p 8080:8080 \
-v $PWD/examples/manifest.yaml:/etc/koap/manifest.yaml \
ghcr.io/chaliy/koap:latest service --api-manifest /etc/koap/manifest.yaml- Enjoy
open http://localhost:8080Ensure you have make, node, python, pipenv on your machine.
make build # Install dependecies and build UI
make local-run # Run serveropen http://localhost:8080Koap accepts --api-manifest with path to JSON or YAML representation of API Manifest.
ConfigMaps with annotation koap.tv/apimanifests will be treated as set of API Manifests. Each key is API Manifest.