A Kuadrant service that facilitates its resources to build documentation sites.
Kamwiel makes it possible to consume Kuadrant resources, extend its features connecting 3rd party services, digest and expose them making it possible for other services and documentation tools to employ them. Its main consumer is Kamrad, a Developer Portal builder.
Given Kamwiel is meant to work within Kuadrant, the setup of your cluster should at least include its resources. At this PoC level, the minimal secured way of running it includes Kuadrant CRDs, an Authorino instance to handle AuthN/AuthZ and an Envoy proxy as the cluster Ingress object.
Kamwiel comes with some useful scripts that make it easier to try it locally. You could inspect them running make help
.
However, it needs a couple of dependencies to make it possible:
The easiest way to try it out is to run the script in charge of setting everything up:
make local-setup
This will run a local Kubernetes server loaded up with a freshly built Kamwiel image plus Authorino, Envoy and Kuadrant CRDs with some sample data. It will also configure Authorino as the protection layer, issuing an API key that'll make it possible to consume the cluster resources like so:
curl -H 'X-API-KEY: YOUR_AUTO_GENERATED_API_KEY' http://kamwiel-authorino.127.0.0.1.nip.io:8000/ping
The feature list is quite reduce at this PoC stage, expect to change drastically.
Feature | Description | Stage | |
---|---|---|---|
REST | GET /apis | Retrieves a list of API | Ready |
GET /apis/:name | Retrieves a specific API by name | Ready | |
GET /state | Retrieves the API List state* | Ready | |
PUT /state/:hash | Updates the "freshness" of the API List state. | Ready | |
Webhooks | API List fresh | Configrable outgoing webhook that sends the API List hash when it's changed | Ready |
Integrations | 3rd party APIs | Connect external APIs/Services and expose its resources | In Analysis |