controller-tools: Index | Files | Directories

package schemapatcher

import ""


Package Files

gen.go zz_generated.markerhelp.go

type Generator Uses

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 Uses

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

func (Generator) Help Uses

func (Generator) Help() *markers.DefinitionHelp

func (Generator) RegisterMarkers Uses

func (Generator) RegisterMarkers(into *markers.Registry) error



Package schemapatcher imports 15 packages (graph) and is imported by 2 packages. Updated 2020-02-27. Refresh now. Tools for package owners.