Back to

package schemapatcher

Latest Go to latest
Published: Apr 24, 2020 | License: Apache-2.0 | Module:


type Generator

type Generator struct {
	// ManifestsPath contains the CustomResourceDefinition YAML files.
	ManifestsPath string `marker:"manifests"`

	// MaxDescLen specifies the maximum description length for fields in CRD's OpenAPI schema.
	// 0 indicates drop the description for all fields completely.
	// n indicates limit the description to at most n characters and truncate the description to
	// closest sentence boundary if it exceeds n characters.
	MaxDescLen *int `marker:",optional"`

Generator patches existing CRDs with new schemata.

For legacy (v1beta1) single-version CRDs, it will simply replace the global schema.

For legacy (v1beta1) multi-version CRDs, and any v1 CRDs, it will replace schemata of existing versions and *clear the schema* from any versions not specified in the Go code. It will *not* add new versions, or remove old ones.

For legacy multi-version CRDs with identical schemata, it will take care of lifting the per-version schema up to the global schema.

It will generate output for each "CRD Version" (API version of the CRD type itself) , e.g. apiextensions/v1beta1 and apiextensions/v1) available.

func (Generator) Generate

func (g Generator) Generate(ctx *genall.GenerationContext) (result error)

func (Generator) Help

func (Generator) Help() *markers.DefinitionHelp

func (Generator) RegisterMarkers

func (Generator) RegisterMarkers(into *markers.Registry) error
Documentation was rendered with GOOS=linux and GOARCH=amd64.

Jump to identifier

Keyboard shortcuts

? : This menu
f or F : Jump to identifier