operators

package
v0.20.0 Latest Latest
Warning

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

Go to latest
Published: Jan 7, 2022 License: Apache-2.0 Imports: 7 Imported by: 0

Documentation

Overview

Package operators is the internal version of the API. +groupName=operators.coreos.com

Index

Constants

This section is empty.

Variables

View Source
var (
	Group = "packages.operators.coreos.com"

	// SchemeGroupVersion is the GroupVersion used to register this object
	SchemeGroupVersion = schema.GroupVersion{Group: Group, Version: runtime.APIVersionInternal}
	SchemeBuilder      = runtime.NewSchemeBuilder(addKnownTypes)
	AddToScheme        = SchemeBuilder.AddToScheme
)

Functions

func GetImages

func GetImages(csvJSON string) []string

GetImages returns a list of images listed in CSV (spec and deployments)

func Kind

func Kind(kind string) schema.GroupKind

Kind takes an unqualified kind and returns the group-qualified kind.

func Resource

func Resource(resource string) schema.GroupResource

Resource takes an unqualified resource and returns the group-qualified resource.

Types

type AppLink struct {
	Name string
	URL  string
}

AppLink defines a link to an application

func (*AppLink) DeepCopy

func (in *AppLink) DeepCopy() *AppLink

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AppLink.

func (*AppLink) DeepCopyInto

func (in *AppLink) DeepCopyInto(out *AppLink)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type CSVDescription

type CSVDescription struct {
	// DisplayName is the CSV's display name
	DisplayName string

	// Icon is the CSV's base64 encoded icon
	// +listType=set
	Icon []Icon

	// Version is the CSV's semantic version
	Version version.OperatorVersion

	// Provider is the CSV's provider
	Provider    AppLink
	Annotations map[string]string
	Keywords    []string
	Links       []AppLink
	Maintainers []Maintainer
	Maturity    string

	// LongDescription is the CSV's description
	LongDescription string

	// InstallModes specify supported installation types
	InstallModes []operatorv1alpha1.InstallMode

	CustomResourceDefinitions operatorv1alpha1.CustomResourceDefinitions
	APIServiceDefinitions     operatorv1alpha1.APIServiceDefinitions
	NativeAPIs                []metav1.GroupVersionKind `json:"nativeApis,omitempty"`

	// Minimum Kubernetes version for operator installation
	MinKubeVersion string `json:"minKubeVersion,omitempty"`

	// List of related images
	RelatedImages []string `json:"relatedImages,omitempty"`
}

CSVDescription defines a description of a CSV

func CreateCSVDescription

func CreateCSVDescription(csv *operatorsv1alpha1.ClusterServiceVersion, csvJSON string) CSVDescription

CreateCSVDescription creates a CSVDescription from a given CSV

func (*CSVDescription) DeepCopy

func (in *CSVDescription) DeepCopy() *CSVDescription

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CSVDescription.

func (*CSVDescription) DeepCopyInto

func (in *CSVDescription) DeepCopyInto(out *CSVDescription)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type Icon

type Icon struct {
	Base64Data string
	Mediatype  string
}

Icon defines a base64 encoded icon and media type

func (*Icon) DeepCopy

func (in *Icon) DeepCopy() *Icon

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Icon.

func (*Icon) DeepCopyInto

func (in *Icon) DeepCopyInto(out *Icon)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type Maintainer

type Maintainer struct {
	Name  string `json:"name,omitempty"`
	Email string `json:"email,omitempty"`
}

Maintainer defines a project maintainer

func (*Maintainer) DeepCopy

func (in *Maintainer) DeepCopy() *Maintainer

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Maintainer.

func (*Maintainer) DeepCopyInto

func (in *Maintainer) DeepCopyInto(out *Maintainer)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type PackageChannel

type PackageChannel struct {
	// Name is the name of the channel, e.g.
	Name string

	// CurrentCSV defines a reference to the CSV holding the version of this package currently
	// for the channel.
	CurrentCSV string

	// CurrentCSVSpec holds the spec of the current CSV
	CurrentCSVDesc CSVDescription
}

PackageChannel defines a single channel under a package, pointing to a version of that package.

func (*PackageChannel) DeepCopy

func (in *PackageChannel) DeepCopy() *PackageChannel

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PackageChannel.

func (*PackageChannel) DeepCopyInto

func (in *PackageChannel) DeepCopyInto(out *PackageChannel)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (PackageChannel) IsDefaultChannel

func (pc PackageChannel) IsDefaultChannel(pm PackageManifest) bool

IsDefaultChannel returns true if the PackageChannel is the default for the PackageManifest

type PackageManifest

type PackageManifest struct {
	metav1.TypeMeta
	metav1.ObjectMeta

	Spec   PackageManifestSpec
	Status PackageManifestStatus
}

PackageManifest holds information about a package, which is a reference to one (or more) channels under a single package. +genclient +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object

func (*PackageManifest) DeepCopy

func (in *PackageManifest) DeepCopy() *PackageManifest

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PackageManifest.

func (*PackageManifest) DeepCopyInto

func (in *PackageManifest) DeepCopyInto(out *PackageManifest)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*PackageManifest) DeepCopyObject

func (in *PackageManifest) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (PackageManifest) GetDefaultChannel

func (m PackageManifest) GetDefaultChannel() string

GetDefaultChannel gets the default channel or returns the only one if there's only one. returns empty string if it can't determine the default

type PackageManifestList

type PackageManifestList struct {
	metav1.TypeMeta
	metav1.ListMeta
	// +listType=set
	Items []PackageManifest
}

PackageManifestList is a list of PackageManifest objects. +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object

func (*PackageManifestList) DeepCopy

func (in *PackageManifestList) DeepCopy() *PackageManifestList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PackageManifestList.

func (*PackageManifestList) DeepCopyInto

func (in *PackageManifestList) DeepCopyInto(out *PackageManifestList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*PackageManifestList) DeepCopyObject

func (in *PackageManifestList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type PackageManifestSpec

type PackageManifestSpec struct{}

PackageManifestSpec defines the desired state of PackageManifest

func (*PackageManifestSpec) DeepCopy

func (in *PackageManifestSpec) DeepCopy() *PackageManifestSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PackageManifestSpec.

func (*PackageManifestSpec) DeepCopyInto

func (in *PackageManifestSpec) DeepCopyInto(out *PackageManifestSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type PackageManifestStatus

type PackageManifestStatus struct {
	// CatalogSource is the name of the CatalogSource this package belongs to
	CatalogSource            string
	CatalogSourceDisplayName string
	CatalogSourcePublisher   string

	//  CatalogSourceNamespace is the namespace of the owning CatalogSource
	CatalogSourceNamespace string

	// Provider is the provider of the PackageManifest's default CSV
	Provider AppLink

	// PackageName is the name of the overall package, ala .
	PackageName string

	// Channels are the declared channels for the package, ala .
	// +listType=set
	Channels []PackageChannel

	// DefaultChannel is, if specified, the name of the default channel for the package. The
	// default channel will be installed if no other channel is explicitly given. If the package
	// has a single channel, then that channel is implicitly the default.
	DefaultChannel string
}

PackageManifestStatus represents the current status of the PackageManifest

func (*PackageManifestStatus) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PackageManifestStatus.

func (*PackageManifestStatus) DeepCopyInto

func (in *PackageManifestStatus) DeepCopyInto(out *PackageManifestStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

Directories

Path Synopsis
+groupName=operators.coreos.com
+groupName=operators.coreos.com

Jump to

Keyboard shortcuts

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