Documentation ¶
Index ¶
Constants ¶
const ( Group = "packages." + operators.GroupName Version = "v1" PackageManifestKind = "PackageManifest" PackageManifestListKind = "PackageManifestList" )
Variables ¶
var ( SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes) AddToScheme = localSchemeBuilder.AddToScheme )
var SchemeGroupVersion = schema.GroupVersion{Group: Group, Version: Version}
SchemeGroupVersion is the group version used to register these objects.
Functions ¶
func Resource ¶
func Resource(resource string) schema.GroupResource
Resource takes an unqualified resource and returns a Group-qualified GroupResource.
Types ¶
type AppLink ¶
AppLink defines a link to an application
func (*AppLink) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AppLink.
func (*AppLink) DeepCopyInto ¶
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 `json:"displayName,omitempty"` // Icon is the CSV's base64 encoded icon // +listType=set Icon []Icon `json:"icon,omitempty"` // Version is the CSV's semantic version Version version.OperatorVersion `json:"version,omitempty"` // Provider is the CSV's provider Provider AppLink `json:"provider,omitempty"` // +listType=map Annotations map[string]string `json:"annotations,omitempty"` // +listType=set Keywords []string `json:"keywords,omitempty"` // +listType=set Links []AppLink `json:"links,omitempty"` // +listType=set Maintainers []Maintainer `json:"maintainers,omitempty"` Maturity string `json:"maturity,omitempty"` // LongDescription is the CSV's description LongDescription string `json:"description,omitempty"` // InstallModes specify supported installation types // +listType=set InstallModes []operatorv1alpha1.InstallMode `json:"installModes,omitempty"` CustomResourceDefinitions operatorv1alpha1.CustomResourceDefinitions `json:"customresourcedefinitions,omitempty"` APIServiceDefinitions operatorv1alpha1.APIServiceDefinitions `json:"apiservicedefinitions,omitempty"` 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 (*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 `json:"base64data,omitempty"` Mediatype string `json:"mediatype,omitempty"` }
Icon defines a base64 encoded icon and media type
func (*Icon) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Icon.
func (*Icon) DeepCopyInto ¶
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. `alpha` or `stable` Name string `json:"name"` // CurrentCSV defines a reference to the CSV holding the version of this package currently // for the channel. CurrentCSV string `json:"currentCSV"` // CurrentCSVSpec holds the spec of the current CSV CurrentCSVDesc CSVDescription `json:"currentCSVDesc,omitempty"` }
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 `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec PackageManifestSpec `json:"spec,omitempty"` Status PackageManifestStatus `json:"status,omitempty"` }
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 `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` // +listType=set Items []PackageManifest `json:"items"` }
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 `json:"catalogSource"` CatalogSourceDisplayName string `json:"catalogSourceDisplayName"` CatalogSourcePublisher string `json:"catalogSourcePublisher"` // CatalogSourceNamespace is the namespace of the owning CatalogSource CatalogSourceNamespace string `json:"catalogSourceNamespace"` // Provider is the provider of the PackageManifest's default CSV Provider AppLink `json:"provider,omitempty"` // PackageName is the name of the overall package, ala `etcd`. PackageName string `json:"packageName"` // Channels are the declared channels for the package, ala `stable` or `alpha`. // +listType=set Channels []PackageChannel `json:"channels"` // 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 `json:"defaultChannel"` }
PackageManifestStatus represents the current status of the PackageManifest
func (*PackageManifestStatus) DeepCopy ¶
func (in *PackageManifestStatus) DeepCopy() *PackageManifestStatus
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.