Folks - we're happy announce beta-1 of our open-source Ingress controller Kusk Gateway - which makes your OpenAPI/Swagger definition the source-of-truth for both functional and operational traits of your API.
If you're using OpenAPI to build REST APIs for Kubernetes Kusk is for you; operational configuration is provided by use of a dedicated x-kusk extension in your OpenAPI/Swagger definition, for example:
x-kusk:
cors:
origins:
- '*'
methods:
- POST
- PATCH
- DELETE
- PUT
- GET
- OPTIONS
headers:
- Content-Type
credentials: true
max_age: 86200
qos:
retries: 10
request_timeout: 60
idle_timeout: 30
will ensure timeouts and CORS settings for your API when you deploy it.
Or if you're keen on mocking all (or parts) of your API you can add the following:
x-kusk:
mocking:
enabled: true
which will result in Kusk Gateway returning mock-responses based on your OpenAPI definition. Read more about mocking: https://kubeshop.github.io/kusk-gateway/extension/#mocking
Since all operational configuration is in your OpenAPI definition you can easily automate the deployment of your APIs as part of a CI/CD/GitOps workflow - for example using ArgoCD or GitHub Actions.
Check out the announcement blog-post at https://kubeshop.io/blog/beta-1-release-of-kusk-gateway-openapi-driven-kubernetes-ingress-controller and head over to GitHub to get the release and read the docs - https://github.com/kubeshop/kusk-gateway.
Happy APIing!
Top comments (0)