Package openapi is a collection of libraries for fetching the openapi spec from a Kubernetes server and then indexing the type definitions. The openapi spec contains the object model definitions and extensions metadata such as the patchStrategy and patchMergeKey for creating patches.



    View Source
    const PrintColumnsKey = "x-kubernetes-print-columns"


    This section is empty.


    func GetPrintColumns

    func GetPrintColumns(extensions spec.Extensions) (string, bool)

      GetPrintColumns looks for the open API extension for the display columns.

      func SupportsDryRun

      func SupportsDryRun(doc *openapi_v2.Document, gvk schema.GroupVersionKind) (bool, error)

        SupportsDryRun is a method that let's us look in the OpenAPI if the specific group-version-kind supports the dryRun query parameter for the PATCH end-point.


        type Getter

        type Getter interface {
        	// OpenAPIData returns the parsed OpenAPIData
        	Get() (Resources, error)

          Getter is an interface for fetching openapi specs and parsing them into an Resources struct

          func NewOpenAPIGetter

          func NewOpenAPIGetter(openAPIClient discovery.OpenAPISchemaInterface) Getter

            NewOpenAPIGetter returns an object to return OpenAPIDatas which reads from a server, and then stores in memory for subsequent invocations

            type Resources

            type Resources interface {
            	LookupResource(gvk schema.GroupVersionKind) proto.Schema

              Resources interface describe a resources provider, that can give you resource based on group-version-kind.

              func NewOpenAPIData

              func NewOpenAPIData(doc *openapi_v2.Document) (Resources, error)


              Path Synopsis