kube-openapi

module
v0.0.0-...-2c72e55 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Dec 12, 2024 License: Apache-2.0

README

Kube OpenAPI

This repo is the home for Kubernetes OpenAPI discovery spec generation. The goal is to support a subset of OpenAPI features to satisfy kubernetes use-cases but implement that subset with little to no assumption about the structure of the code or routes. Thus, there should be no kubernetes specific code in this repo.

There are two main parts:

  • A model generator that goes through .go files, find and generate model definitions.
  • The spec generator that is responsible for dynamically generating the final OpenAPI spec using web service routes or combining other OpenAPI/Json specs.

Contributing

Please see CONTRIBUTING.md for instructions on how to contribute.

Directories

Path Synopsis
cmd
pkg
builder
Package builder contains code to generate OpenAPI discovery spec (which initial version of it also known as Swagger 2.0).
Package builder contains code to generate OpenAPI discovery spec (which initial version of it also known as Swagger 2.0).
cached
Package cached provides a cache mechanism based on etags to lazily build, and/or cache results from expensive operation such that those operations are not repeated unnecessarily.
Package cached provides a cache mechanism based on etags to lazily build, and/or cache results from expensive operation such that those operations are not repeated unnecessarily.
common
package common holds shared code and types between open API code generator and spec generator.
package common holds shared code and types between open API code generator and spec generator.
generators/rules
Package rules contains API rules that are enforced in OpenAPI spec generation as part of the machinery.
Package rules contains API rules that are enforced in OpenAPI spec generation as part of the machinery.
idl
The IDL package describes comment directives that may be applied to API types and fields.
The IDL package describes comment directives that may be applied to API types and fields.
internal/third_party/go-json-experiment/json
Package json implements serialization of JSON as specified in RFC 4627, RFC 7159, RFC 7493, RFC 8259, and RFC 8785.
Package json implements serialization of JSON as specified in RFC 4627, RFC 7159, RFC 7493, RFC 8259, and RFC 8785.
internal/third_party/govalidator
Package govalidator is package of validators and sanitizers for strings, structs and collections.
Package govalidator is package of validators and sanitizers for strings, structs and collections.
util/proto
Package proto is a collection of libraries for parsing and indexing the type definitions.
Package proto is a collection of libraries for parsing and indexing the type definitions.
validation/errors
Package errors provides an Error interface and several concrete types implementing this interface to manage API errors and JSON-schema validation errors.
Package errors provides an Error interface and several concrete types implementing this interface to manage API errors and JSON-schema validation errors.
validation/strfmt
Package strfmt contains custom string formats
Package strfmt contains custom string formats
test
integration Module

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL