Kusk-gen is a Go-based tool that generates Kubernetes Ingress controller configurations directly from OpenAPI definitions. The project treats OpenAPI/Swagger specifications as the authoritative source for creating supplementary Kubernetes resources, eliminating the need for developers to manually manage infrastructure configurations that don't directly relate to their applications. By leveraging OpenAPI as a single source of truth, kusk-gen extends a common microservice development practice into the Kubernetes deployment space.
The tool addresses a specific pain point in Kubernetes deployments: developers deploying REST APIs should not need to worry about managing resources for mappings, security, traffic control, and monitoring separately from their API specifications. Kusk-gen automates the generation of these resources based on the API definition itself, reducing development time and removing the burden of learning tool-specific configuration formats. This approach allows teams to easily switch between supported ingress controllers without needing to rewrite configurations in different formats.
Kusk-gen currently supports multiple popular Kubernetes ingress and gateway solutions. These include Ambassador 1.x and Ambassador 2.0, with the latter noted as a developer preview and unstable. The tool also generates configurations for Linkerd, the community-maintained Ingress-Nginx controller, and Traefik V2. The architecture is designed to make it straightforward to extend with additional generators, with Kong and Contour mentioned as upcoming tools the project would like to support.
The project includes a custom OpenAPI Extension that allows developers to specify extended quality-of-service and Kubernetes-related metadata within their API definitions. This metadata is then used by kusk-gen to configure cluster resources appropriately. The tool can inspect a cluster to automatically detect which supported tools are present and generate corresponding resources without manual intervention. This capability makes kusk-gen compatible with both manual workflows and automated GitOps or continuous deployment pipelines.
Installation options include Homebrew, direct installation via Go, and pre-built binaries available on the releases page. The project maintains comprehensive documentation at its homepage and actively engages with users through a Discord server for questions and suggestions.
GitGenius activity data shows the repository has minimal tracked issue and pull request activity, with a median response latency of zero hours across tracked items. The most active issue category is bug reports. Contributors julian-alarcon and olensmar have been tracked as active participants. The repository is part of a broader Kubeshop ecosystem, with overlapping contributors shared with related projects including monokle, testkube, and kusk-gateway, indicating these tools are part of a coordinated platform for Kubernetes development and testing workflows.