v1alpha1

package
v0.2.26 Latest Latest
Warning

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

Go to latest
Published: Jan 17, 2023 License: Apache-2.0 Imports: 15 Imported by: 6

Documentation

Overview

Package v1alpha1 contains API Schema definitions for the packages v1alpha1 API group +kubebuilder:object:generate=true +groupName=packages.eks.amazonaws.com

Index

Constants

View Source
const (
	PackageKind      = "Package"
	PackageNamespace = "eksa-packages"
)
View Source
const (
	PackageBundleKind = "PackageBundle"
	Latest            = "latest"
)
View Source
const PackageBundleControllerKind = "PackageBundleController"

Variables

View Source
var (
	// GroupVersion is group version used to register these objects
	GroupVersion = schema.GroupVersion{Group: "packages.eks.amazonaws.com", Version: "v1alpha1"}

	// SchemeBuilder is used to add go types to the GroupVersionKind scheme
	SchemeBuilder = &scheme.Builder{GroupVersion: GroupVersion}

	// AddToScheme adds the types in this group-version to the given scheme.
	AddToScheme = SchemeBuilder.AddToScheme
)

Functions

This section is empty.

Types

type BundleControllerStateEnum

type BundleControllerStateEnum string

+kubebuilder:validation:Enum=ignored;active;disconnected;upgrade available

const (
	BundleControllerStateIgnored          BundleControllerStateEnum = "ignored"
	BundleControllerStateActive           BundleControllerStateEnum = "active"
	BundleControllerStateUpgradeAvailable BundleControllerStateEnum = "upgrade available"
	BundleControllerStateDisconnected     BundleControllerStateEnum = "disconnected"
)

type BundlePackage

type BundlePackage struct {
	// +kubebuilder:validation:Required
	// Name of the package.
	Name string `json:"name,omitempty"`

	// +kubebuilder:validation:Required
	// Source location for the package (probably a helm chart).
	Source BundlePackageSource `json:"source"`

	// WorkloadOnly specifies if the package should be installed
	// only on the workload cluster
	WorkloadOnly bool `json:"workloadonly,omitempty"`
}

BundlePackage specifies a package within a bundle.

func (*BundlePackage) DeepCopy

func (in *BundlePackage) DeepCopy() *BundlePackage

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

func (*BundlePackage) DeepCopyInto

func (in *BundlePackage) DeepCopyInto(out *BundlePackage)

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

func (*BundlePackage) GetJsonSchema added in v0.2.0

func (bp *BundlePackage) GetJsonSchema(pkgVersion *SourceVersion) ([]byte, error)

type BundlePackageSource

type BundlePackageSource struct {
	// +kubebuilder:validation:Optional
	// Registry in which the package is found.
	Registry string `json:"registry,omitempty"`

	// +kubebuilder:validation:Required
	// Repository within the Registry where the package is found.
	Repository string `json:"repository"`

	// +kubebuilder:validation:MinItems=1
	// Versions of the package supported by this bundle.
	Versions []SourceVersion `json:"versions"`
}

BundlePackageSource identifies the location of a package.

func (*BundlePackageSource) DeepCopy

func (in *BundlePackageSource) DeepCopy() *BundlePackageSource

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

func (*BundlePackageSource) DeepCopyInto

func (in *BundlePackageSource) DeepCopyInto(out *BundlePackageSource)

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

func (BundlePackageSource) PackageMatches added in v0.1.11

func (s BundlePackageSource) PackageMatches(other BundlePackageSource) bool

PackageMatches returns true if the given source locations match one another.

type BundlesByVersion added in v0.2.9

type BundlesByVersion []PackageBundle

BundlesByVersion implements sort.Interface for PackageBundles.

func (BundlesByVersion) DeepCopy added in v0.2.9

func (in BundlesByVersion) DeepCopy() BundlesByVersion

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

func (BundlesByVersion) DeepCopyInto added in v0.2.9

func (in BundlesByVersion) DeepCopyInto(out *BundlesByVersion)

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

func (BundlesByVersion) Len added in v0.2.9

func (b BundlesByVersion) Len() int

func (BundlesByVersion) Less added in v0.2.9

func (b BundlesByVersion) Less(i, j int) bool

func (BundlesByVersion) Swap added in v0.2.9

func (b BundlesByVersion) Swap(i, j int)

type Package

type Package struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   PackageSpec   `json:"spec,omitempty"`
	Status PackageStatus `json:"status,omitempty"`
}

+kubebuilder:object:root=true +kubebuilder:subresource:status +kubebuilder:webhook:path=/validate-packages-eks-amazonaws-com-v1alpha1-package,mutating=false,failurePolicy=fail,sideEffects=None,groups=packages.eks.amazonaws.com,resources=packages,verbs=create;update,versions=v1alpha1,name=vpackage.kb.io,admissionReviewVersions=v1 +kubebuilder:printcolumn:name="Package",type=string,JSONPath=`.spec.packageName` +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:printcolumn:name="State",type=string,JSONPath=`.status.state` +kubebuilder:printcolumn:name="CurrentVersion",type=string,JSONPath=`.status.currentVersion` +kubebuilder:printcolumn:name="TargetVersion",type=string,JSONPath=`.status.targetVersion` +kubebuilder:printcolumn:name="Detail",type=string,JSONPath=`.status.detail` Package is the Schema for the package API.

func NewPackage added in v0.2.12

func NewPackage(packageName string, name, namespace string) Package

func (*Package) DeepCopy

func (in *Package) DeepCopy() *Package

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

func (*Package) DeepCopyInto

func (in *Package) DeepCopyInto(out *Package)

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

func (*Package) DeepCopyObject

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

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

func (*Package) ExpectedKind

func (config *Package) ExpectedKind() string

func (*Package) GetClusterName added in v0.2.8

func (config *Package) GetClusterName() string

func (*Package) GetValues

func (config *Package) GetValues() (values map[string]interface{}, err error)

GetValues convert spec values into generic values map

func (*Package) IsInstalledOnWorkload added in v0.2.9

func (config *Package) IsInstalledOnWorkload() bool

IsInstalledOnWorkload returns true if the package is being installed on a workload cluster returns false otherwise

func (*Package) IsOldNamespace added in v0.2.23

func (config *Package) IsOldNamespace() bool

func (*Package) IsValidNamespace added in v0.2.8

func (config *Package) IsValidNamespace() bool

func (*Package) MetaKind

func (config *Package) MetaKind() string

type PackageAvailableUpgrade

type PackageAvailableUpgrade struct {
	// +kubebuilder:validation:Required
	// Version is a human-friendly version name for the package upgrade.
	Version string `json:"version"`

	// +kubebuilder:validation:Required
	// Tag is a specific version number or sha256 checksum for the package
	// upgrade.
	Tag string `json:"tag"`
}

PackageAvailableUpgrade details the package's available upgrade versions.

func (*PackageAvailableUpgrade) DeepCopy

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

func (*PackageAvailableUpgrade) DeepCopyInto

func (in *PackageAvailableUpgrade) DeepCopyInto(out *PackageAvailableUpgrade)

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

type PackageBundle

type PackageBundle struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   PackageBundleSpec   `json:"spec,omitempty"`
	Status PackageBundleStatus `json:"status,omitempty"`
}

+kubebuilder:object:root=true +kubebuilder:subresource:status +kubebuilder:webhook:path=/validate-packages-eks-amazonaws-com-v1alpha1-packagebundle,mutating=false,failurePolicy=fail,sideEffects=None,groups=packages.eks.amazonaws.com,resources=packagebundles,verbs=create;update,versions=v1alpha1,name=vpackagebundle.kb.io,admissionReviewVersions=v1 +kubebuilder:printcolumn:name="State",type=string,JSONPath=`.status.state` PackageBundle is the Schema for the packagebundle API.

func (*PackageBundle) DeepCopy

func (in *PackageBundle) DeepCopy() *PackageBundle

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

func (*PackageBundle) DeepCopyInto

func (in *PackageBundle) DeepCopyInto(out *PackageBundle)

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

func (*PackageBundle) DeepCopyObject

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

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

func (*PackageBundle) ExpectedKind

func (config *PackageBundle) ExpectedKind() string

func (*PackageBundle) FindOCISource added in v0.2.12

func (config *PackageBundle) FindOCISource(pkg BundlePackage, pkgVersion string) (retSource PackageOCISource, err error)

func (*PackageBundle) FindOCISourceByName added in v0.2.12

func (config *PackageBundle) FindOCISourceByName(pkgName string, pkgVersion string) (retSource PackageOCISource, err error)

func (*PackageBundle) FindPackage added in v0.2.12

func (config *PackageBundle) FindPackage(pkgName string) (retPkg BundlePackage, err error)

func (*PackageBundle) FindVersion added in v0.2.12

func (config *PackageBundle) FindVersion(pkg BundlePackage, pkgVersion string) (ret SourceVersion, err error)

func (*PackageBundle) GetDependencies added in v0.2.12

func (config *PackageBundle) GetDependencies(version SourceVersion) (dependencies []BundlePackage, err error)

func (*PackageBundle) GetOCISource added in v0.2.12

func (config *PackageBundle) GetOCISource(pkg BundlePackage, packageVersion SourceVersion) (retSource PackageOCISource)

func (*PackageBundle) IsValidVersion added in v0.2.0

func (config *PackageBundle) IsValidVersion() bool

IsValidVersion returns true if the bundle version is valid

func (*PackageBundle) KubeVersionMatches added in v0.1.11

func (config *PackageBundle) KubeVersionMatches(targetKubeVersion *version.Info) (matches bool, err error)

KubeVersionMatches returns true if the target Kubernetes matches the current bundle's Kubernetes version.

Note the method only compares the major and minor versions of Kubernetes, and ignore the patch numbers.

func (PackageBundle) LessThan added in v0.1.7

func (config PackageBundle) LessThan(rhsBundle *PackageBundle) bool

LessThan evaluates if the left calling bundle is less than the supplied parameter

If the left hand side bundle is older than the right hand side, this method returns true. If it is newer (greater) it returns false. If they are the same it returns false.

func (*PackageBundle) MetaKind

func (config *PackageBundle) MetaKind() string

type PackageBundleController

type PackageBundleController struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   PackageBundleControllerSpec   `json:"spec,omitempty"`
	Status PackageBundleControllerStatus `json:"status,omitempty"`
}

+kubebuilder:object:root=true +kubebuilder:subresource:status +kubebuilder:webhook:path=/validate-packages-eks-amazonaws-com-v1alpha1-packagebundlecontroller,mutating=false,failurePolicy=fail,sideEffects=None,groups=packages.eks.amazonaws.com,resources=packagebundlecontrollers,verbs=create;update,versions=v1alpha1,name=vpackagebundlecontroller.kb.io,admissionReviewVersions=v1 +kubebuilder:resource:shortName=pbc,path=packagebundlecontrollers +kubebuilder:printcolumn:name="ActiveBundle",type=string,JSONPath=`.spec.activeBundle` +kubebuilder:printcolumn:name="State",type=string,JSONPath=`.status.state` +kubebuilder:printcolumn:name="Detail",type=string,JSONPath=`.status.detail` PackageBundleController is the Schema for the packagebundlecontroller API.

func (*PackageBundleController) DeepCopy

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

func (*PackageBundleController) DeepCopyInto

func (in *PackageBundleController) DeepCopyInto(out *PackageBundleController)

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

func (*PackageBundleController) DeepCopyObject

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

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

func (*PackageBundleController) ExpectedKind

func (config *PackageBundleController) ExpectedKind() string

func (*PackageBundleController) GetActiveBundleURI added in v0.2.8

func (config *PackageBundleController) GetActiveBundleURI() (uri string)

func (*PackageBundleController) GetBundleURI added in v0.2.8

func (config *PackageBundleController) GetBundleURI() (uri string)

func (*PackageBundleController) GetDefaultImageRegistry added in v0.2.0

func (config *PackageBundleController) GetDefaultImageRegistry() string

func (*PackageBundleController) GetDefaultRegistry added in v0.2.0

func (config *PackageBundleController) GetDefaultRegistry() string

func (*PackageBundleController) IsIgnored added in v0.1.7

func (config *PackageBundleController) IsIgnored() bool

func (*PackageBundleController) MetaKind

func (config *PackageBundleController) MetaKind() string

type PackageBundleControllerList

type PackageBundleControllerList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []PackageBundleController `json:"items"`
}

+kubebuilder:object:root=true PackageBundleControllerList contains a list of PackageBundleController.

func (*PackageBundleControllerList) DeepCopy

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

func (*PackageBundleControllerList) DeepCopyInto

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

func (*PackageBundleControllerList) DeepCopyObject

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

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

type PackageBundleControllerSpec

type PackageBundleControllerSpec struct {
	// LogLevel controls the verbosity of logging in the controller.
	// +optional
	LogLevel *int32 `json:"logLevel,omitempty"`

	// +kubebuilder:default:="24h"
	// UpgradeCheckInterval is the time between upgrade checks.
	//
	// The format is that of time's ParseDuration.
	// +optional
	UpgradeCheckInterval metav1.Duration `json:"upgradeCheckInterval,omitempty"`

	// +kubebuilder:default:="1h"
	// UpgradeCheckShortInterval time between upgrade checks if there is a problem.
	//
	// The format is that of time's ParseDuration.
	// +optional
	UpgradeCheckShortInterval metav1.Duration `json:"upgradeCheckShortInterval,omitempty"`

	// ActiveBundle is name of the bundle from which packages should be sourced.
	// +optional
	ActiveBundle string `json:"activeBundle"`

	// PrivateRegistry is the registry being used for all images, charts and bundles
	// +optional
	PrivateRegistry string `json:"privateRegistry"`

	// +kubebuilder:default:="public.ecr.aws/eks-anywhere"
	// DefaultRegistry for pulling helm charts and the bundle
	// +optional
	DefaultRegistry string `json:"defaultRegistry"`

	// +kubebuilder:default:="783794618700.dkr.ecr.us-west-2.amazonaws.com"
	// DefaultImageRegistry for pulling images
	// +optional
	DefaultImageRegistry string `json:"defaultImageRegistry"`

	// +kubebuilder:default:="eks-anywhere-packages-bundles"
	// Repository portion of an OCI address to the bundle
	// +optional
	BundleRepository string `json:"bundleRepository"`

	// +kubebuilder:default:=false
	// Allow target namespace creation by the controller
	// +optional
	CreateNamespace bool `json:"createNamespace"`
}

PackageBundleControllerSpec defines the desired state of PackageBundleController.

func (*PackageBundleControllerSpec) DeepCopy

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

func (*PackageBundleControllerSpec) DeepCopyInto

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

type PackageBundleControllerStatus

type PackageBundleControllerStatus struct {
	// State of the bundle controller.
	State BundleControllerStateEnum `json:"state,omitempty"`

	// Detail of the state.
	Detail string `json:"detail,omitempty"`

	// Spec previous settings
	Spec PackageBundleControllerSpec `json:"spec,omitempty"`
}

PackageBundleControllerStatus defines the observed state of PackageBundleController.

func (*PackageBundleControllerStatus) DeepCopy

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

func (*PackageBundleControllerStatus) DeepCopyInto

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

type PackageBundleList

type PackageBundleList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []PackageBundle `json:"items"`
}

+kubebuilder:object:root=true PackageBundleList contains a list of PackageBundle.

func (*PackageBundleList) DeepCopy

func (in *PackageBundleList) DeepCopy() *PackageBundleList

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

func (*PackageBundleList) DeepCopyInto

func (in *PackageBundleList) DeepCopyInto(out *PackageBundleList)

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

func (*PackageBundleList) DeepCopyObject

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

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

type PackageBundleSpec

type PackageBundleSpec struct {
	// +kubebuilder:validation:Required
	// Packages supported by this bundle.
	Packages []BundlePackage `json:"packages"`

	// +kubebuilder:validation:Optional
	// Minimum required packages controller version
	MinVersion string `json:"minControllerVersion"`
}

PackageBundleSpec defines the desired state of PackageBundle.

func (*PackageBundleSpec) DeepCopy

func (in *PackageBundleSpec) DeepCopy() *PackageBundleSpec

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

func (*PackageBundleSpec) DeepCopyInto

func (in *PackageBundleSpec) DeepCopyInto(out *PackageBundleSpec)

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

type PackageBundleStateEnum

type PackageBundleStateEnum string

+kubebuilder:validation:Enum={"available","ignored","invalid","controller upgrade required"} PackageBundleStateEnum defines the observed state of PackageBundle.

const (
	PackageBundleStateAvailable       PackageBundleStateEnum = "available"
	PackageBundleStateIgnored         PackageBundleStateEnum = "ignored"
	PackageBundleStateInvalid         PackageBundleStateEnum = "invalid"
	PackageBundleStateUpgradeRequired PackageBundleStateEnum = "controller upgrade required"
)

type PackageBundleStatus

type PackageBundleStatus struct {
	Spec  PackageBundleSpec      `json:"spec,omitempty"`
	State PackageBundleStateEnum `json:"state"`
}

PackageBundleStatus defines the observed state of PackageBundle.

func (*PackageBundleStatus) DeepCopy

func (in *PackageBundleStatus) DeepCopy() *PackageBundleStatus

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

func (*PackageBundleStatus) DeepCopyInto

func (in *PackageBundleStatus) DeepCopyInto(out *PackageBundleStatus)

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

type PackageList

type PackageList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []Package `json:"items"`
}

+kubebuilder:object:root=true PackageList contains a list of Package.

func (*PackageList) DeepCopy

func (in *PackageList) DeepCopy() *PackageList

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

func (*PackageList) DeepCopyInto

func (in *PackageList) DeepCopyInto(out *PackageList)

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

func (*PackageList) DeepCopyObject

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

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

type PackageOCISource

type PackageOCISource struct {
	// +kubebuilder:validation:Required
	// Versions of the package supported.
	Version string `json:"version"`
	// +kubebuilder:validation:Required
	// Registry in which the package is found.
	Registry string `json:"registry"`
	// +kubebuilder:validation:Required
	// Repository within the Registry where the package is found.
	Repository string `json:"repository"`
	// +kubebuilder:validation:Required
	// Digest is a checksum value identifying the version of the package and its contents.
	Digest string `json:"digest"`
}

func (*PackageOCISource) DeepCopy

func (in *PackageOCISource) DeepCopy() *PackageOCISource

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

func (*PackageOCISource) DeepCopyInto

func (in *PackageOCISource) DeepCopyInto(out *PackageOCISource)

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

func (PackageOCISource) GetChartUri added in v0.2.0

func (s PackageOCISource) GetChartUri() string

type PackageSpec

type PackageSpec struct {
	// PackageName is the name of the package as specified in the bundle.
	PackageName string `json:"packageName"`

	// PackageVersion is a human-friendly version name or sha256 checksum for the
	// package, as specified in the bundle.
	PackageVersion string `json:"packageVersion,omitempty"`

	// Config for the package.
	Config string `json:"config,omitempty"`

	// TargetNamespace defines where package resources will be deployed.
	TargetNamespace string `json:"targetNamespace,omitempty"`
}

PackageSpec defines the desired state of an package.

func (*PackageSpec) DeepCopy

func (in *PackageSpec) DeepCopy() *PackageSpec

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

func (*PackageSpec) DeepCopyInto

func (in *PackageSpec) DeepCopyInto(out *PackageSpec)

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

type PackageStatus

type PackageStatus struct {
	// +kubebuilder:validation:Required
	// Source associated with the installation.
	Source PackageOCISource `json:"source"`

	// +kubebuilder:validation:Required
	// Version currently installed.
	CurrentVersion string `json:"currentVersion"`

	// +kubebuilder:validation:Required
	// Version to be installed.
	TargetVersion string `json:"targetVersion,omitempty"`

	// State of the installation.
	State StateEnum `json:"state,omitempty"`

	// Detail of the state.
	Detail string `json:"detail,omitempty"`

	// UpgradesAvailable indicates upgraded versions in the bundle.
	UpgradesAvailable []PackageAvailableUpgrade `json:"upgradesAvailable,omitempty"`

	// Spec previous settings
	Spec PackageSpec `json:"spec,omitempty"`
}

PackageStatus defines the observed state of Package.

func (*PackageStatus) DeepCopy

func (in *PackageStatus) DeepCopy() *PackageStatus

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

func (*PackageStatus) DeepCopyInto

func (in *PackageStatus) DeepCopyInto(out *PackageStatus)

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

type SourceVersion

type SourceVersion struct {
	// +kubebuilder:validation:Required
	// Name is a human-friendly description of the version, e.g. "v1.0".
	Name string `json:"name"`

	// +kubebuilder:validation:Required
	// Digest is a checksum value identifying the version of the package and its contents.
	Digest string `json:"digest"`

	// Images is a list of images used by this version of the package.
	Images []VersionImages `json:"images,omitempty"`

	// Schema is a base64 encoded, gzipped json schema used to validate package configurations.
	Schema string `json:"schema,omitempty"`

	// +kubebuilder:validation:Optional
	// Dependencies to be installed before the package
	Dependencies []string `json:"dependencies,omitempty"`
}

SourceVersion describes a version of a package within a repository.

func (*SourceVersion) DeepCopy

func (in *SourceVersion) DeepCopy() *SourceVersion

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

func (*SourceVersion) DeepCopyInto

func (in *SourceVersion) DeepCopyInto(out *SourceVersion)

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

func (SourceVersion) Key

func (v SourceVersion) Key() string

type StateEnum

type StateEnum string

+kubebuilder:validation:Enum=initializing;installing;installing dependencies;installed;updating;uninstalling;unknown

const (
	StateInitializing           StateEnum = "initializing"
	StateInstalling             StateEnum = "installing"
	StateInstallingDependencies StateEnum = "installing dependencies"
	StateInstalled              StateEnum = "installed"
	StateUpdating               StateEnum = "updating"
	StateUninstalling           StateEnum = "uninstalling"
	StateUnknown                StateEnum = "unknown"
)

type VersionImages added in v0.1.3

type VersionImages struct {
	// +kubebuilder:validation:Required
	// Repository within the Registry where the package is found.
	Repository string `json:"repository"`

	// +kubebuilder:validation:Required
	// Digest is a checksum value identifying the version of the package and its contents.
	Digest string `json:"digest"`
}

VersionImages is an image used by a version of a package.

func (*VersionImages) DeepCopy added in v0.1.3

func (in *VersionImages) DeepCopy() *VersionImages

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

func (*VersionImages) DeepCopyInto added in v0.1.3

func (in *VersionImages) DeepCopyInto(out *VersionImages)

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

Jump to

Keyboard shortcuts

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