packages

package
v0.15.0 Latest Latest
Warning

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

Go to latest
Published: Jul 9, 2020 License: Apache-2.0 Imports: 2 Imported by: 1

Documentation

Index

Constants

View Source
const (
	APIVersion = "kudo.dev/v1beta1"
)

Variables

This section is empty.

Functions

This section is empty.

Types

type Files added in v0.9.0

type Files struct {
	Templates Templates
	Operator  *OperatorFile
	Params    *ParamsFile
}

Files represents the raw operator package format the way it is found in the tgz packages

type OperatorFile added in v0.9.0

type OperatorFile struct {
	APIVersion        string                  `json:"apiVersion,omitempty"`
	Name              string                  `json:"name"`
	Description       string                  `json:"description,omitempty"`
	OperatorVersion   string                  `json:"operatorVersion"`
	AppVersion        string                  `json:"appVersion,omitempty"`
	KUDOVersion       string                  `json:"kudoVersion,omitempty"`
	KubernetesVersion string                  `json:"kubernetesVersion,omitempty"`
	Maintainers       []*v1beta1.Maintainer   `json:"maintainers,omitempty"`
	URL               string                  `json:"url,omitempty"`
	Tasks             []v1beta1.Task          `json:"tasks"`
	Plans             map[string]v1beta1.Plan `json:"plans"`
	NamespaceManifest string                  `json:"namespaceManifest,omitempty"`
}

OperatorFile is a representation of the package operator.yaml

type Package

type Package struct {
	// transformed server view
	Resources *Resources
	// working with local package files
	Files *Files
}

Package is an abstraction of the collection of files that makes up a package. It is anything we can retrieve the Resources from.

type Parameter added in v0.9.0

type Parameter struct {
	DisplayName string                `json:"displayName,omitempty"`
	Name        string                `json:"name,omitempty"`
	Description string                `json:"description,omitempty"`
	Required    *bool                 `json:"required,omitempty"`
	Default     interface{}           `json:"default,omitempty"`
	Trigger     string                `json:"trigger,omitempty"`
	Type        v1beta1.ParameterType `json:"type,omitempty"`
}

Modified v1beta1.Parameter that allows for defaults provided as YAML.

type Parameters added in v0.11.0

type Parameters []Parameter

func (Parameters) Len added in v0.11.0

func (p Parameters) Len() int

Len returns the number of params. This is needed to allow sorting of params.

func (Parameters) Less added in v0.11.0

func (p Parameters) Less(x, y int) bool

Less returns true if the name of a param a is less than the name of param b. This is needed to allow sorting of params.

func (Parameters) Swap added in v0.11.0

func (p Parameters) Swap(i, j int)

Swap swaps the position of two items in the params slice. This is needed to allow sorting of params.

type ParamsFile added in v0.9.0

type ParamsFile struct {
	APIVersion string     `json:"apiVersion,omitempty"`
	Parameters Parameters `json:"parameters"`
}

ParamsFile is a representation of the package params.yaml

type Resources added in v0.8.0

type Resources struct {
	Operator        *v1beta1.Operator
	OperatorVersion *v1beta1.OperatorVersion
	Instance        *v1beta1.Instance
}

Resources is collection of CRDs that are used when installing operator during installation, package format is converted to this structure

type Templates added in v0.9.0

type Templates map[string]string

Templates is a map of file names and stringified files in the template folder of an operator

type Verifier added in v0.11.0

type Verifier interface {
	Verify(pf *Files) verifier.Result
}

Verifier defines the interface for all parameter verifiers

Directories

Path Synopsis
Package install provides function to install package resources on a Kubernetes cluster.
Package install provides function to install package resources on a Kubernetes cluster.
verifier

Jump to

Keyboard shortcuts

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