v1alpha1

package
v3.2.0 Latest Latest
Warning

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

Go to latest
Published: Oct 15, 2020 License: Apache-2.0 Imports: 6 Imported by: 0

Documentation

Overview

+groupName=application.giantswarm.io

Index

Constants

View Source
const (
	AppCatalogEntryDocumentationLink = "https://docs.giantswarm.io/reference/cp-k8s-api/AppCatalogEntrys.application.giantswarm.io/"
)

Variables

View Source
var (

	// AddToScheme is used by the generated client.
	AddToScheme = schemeBuilder.AddToScheme
)
View Source
var SchemeGroupVersion = schema.GroupVersion{
	Group:   group,
	Version: version,
}

SchemeGroupVersion is group version used to register these objects

Functions

func NewAppCRD

func NewAppCRD() *v1.CustomResourceDefinition

func NewAppCatalogCRD

func NewAppCatalogCRD() *v1.CustomResourceDefinition

func NewAppCatalogEntryCRD

func NewAppCatalogEntryCRD() *v1.CustomResourceDefinition

func NewAppCatalogEntryTypeMeta

func NewAppCatalogEntryTypeMeta() metav1.TypeMeta

func NewAppCatalogTypeMeta

func NewAppCatalogTypeMeta() metav1.TypeMeta

func NewAppTypeMeta

func NewAppTypeMeta() metav1.TypeMeta

func NewChartCRD

func NewChartCRD() *v1.CustomResourceDefinition

func NewChartTypeMeta

func NewChartTypeMeta() metav1.TypeMeta

Types

type App

type App struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              AppSpec `json:"spec"`
	// +kubebuilder:validation:Optional
	// Status Spec part of the App resource.
	// Initially, it would be left as empty until the operator successfully reconciles the helm release.
	Status AppStatus `json:"status,omitempty"`
}

+genclient +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object +kubebuilder:storageversion +kubebuilder:subresource:status +kubebuilder:resource:categories=common;giantswarm +k8s:openapi-gen=true App represents a managed app.

func NewAppCR

func NewAppCR() *App

NewAppCR returns an App Custom Resource.

func (*App) DeepCopy

func (in *App) DeepCopy() *App

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

func (*App) DeepCopyInto

func (in *App) DeepCopyInto(out *App)

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

func (*App) DeepCopyObject

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

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

type AppCatalog

type AppCatalog struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              AppCatalogSpec `json:"spec"`
}

+genclient +genclient:nonNamespaced +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object +kubebuilder:resource:categories=common;giantswarm,scope=Cluster +kubebuilder:storageversion +k8s:openapi-gen=true AppCatalog represents a catalog of managed apps.

func NewAppCatalogCR

func NewAppCatalogCR() *AppCatalog

NewAppCatalogCR returns an AppCatalog Custom Resource.

func (*AppCatalog) DeepCopy

func (in *AppCatalog) DeepCopy() *AppCatalog

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

func (*AppCatalog) DeepCopyInto

func (in *AppCatalog) DeepCopyInto(out *AppCatalog)

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

func (*AppCatalog) DeepCopyObject

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

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

type AppCatalogEntry

type AppCatalogEntry struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              AppCatalogEntrySpec `json:"spec"`
}

+genclient +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object +kubebuilder:resource:categories=common;giantswarm +kubebuilder:storageversion +k8s:openapi-gen=true AppCatalogEntry represents an entry of an app in a catalog of managed apps.

func NewAppCatalogEntryCR

func NewAppCatalogEntryCR() *AppCatalogEntry

NewAppCatalogEntryCR returns an AppCatalogEntry Custom Resource.

func (*AppCatalogEntry) DeepCopy

func (in *AppCatalogEntry) DeepCopy() *AppCatalogEntry

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

func (*AppCatalogEntry) DeepCopyInto

func (in *AppCatalogEntry) DeepCopyInto(out *AppCatalogEntry)

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

func (*AppCatalogEntry) DeepCopyObject

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

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

type AppCatalogEntryList

type AppCatalogEntryList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata"`
	Items           []AppCatalogEntry `json:"items"`
}

func (*AppCatalogEntryList) DeepCopy

func (in *AppCatalogEntryList) DeepCopy() *AppCatalogEntryList

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

func (*AppCatalogEntryList) DeepCopyInto

func (in *AppCatalogEntryList) DeepCopyInto(out *AppCatalogEntryList)

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

func (*AppCatalogEntryList) DeepCopyObject

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

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

type AppCatalogEntrySpec

type AppCatalogEntrySpec struct {
	// AppName is the name of the app this entry belongs to.
	// e.g. nginx-ingress-controller-app
	AppName string `json:"appName"`
	// AppVersion is the upstream version of the app for this entry.
	// e.g. v0.35.0
	AppVersion string `json:"appVersion"`
	// Catalog is the name of the app catalog this entry belongs to.
	// e.g. giantswarm
	Catalog AppCatalogEntrySpecCatalog `json:"catalog"`
	// Chart is metadata from the Chart.yaml of the app this entry belongs to.
	Chart AppCatalogEntrySpecChart `json:"chart,omitempty"`
	// DateCreated is when this entry was first created.
	// e.g. 2020-09-02T09:40:39.223638219Z
	DateCreated *metav1.Time `json:"dateCreated"`
	// DateUpdated is when this entry was last updated.
	// e.g. 2020-09-02T09:40:39.223638219Z
	DateUpdated *metav1.Time `json:"dateUpdated"`
	// Version is the version of the app chart for this entry.
	// e.g. 1.9.2
	Version string `json:"version"`
}

+k8s:openapi-gen=true

func (*AppCatalogEntrySpec) DeepCopy

func (in *AppCatalogEntrySpec) DeepCopy() *AppCatalogEntrySpec

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

func (*AppCatalogEntrySpec) DeepCopyInto

func (in *AppCatalogEntrySpec) DeepCopyInto(out *AppCatalogEntrySpec)

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

type AppCatalogEntrySpecCatalog

type AppCatalogEntrySpecCatalog struct {
	// Name is the name of the app catalog this entry belongs to.
	// e.g. giantswarm-catalog
	Name string `json:"name"`
	// +kubebuilder:validation:Optional
	// Namespace is the namespace of the catalog. It is empty while the
	// appcatalog CRD is cluster scoped.
	Namespace string `json:"namespace"`
}

+k8s:openapi-gen=true

func (*AppCatalogEntrySpecCatalog) DeepCopy

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

func (*AppCatalogEntrySpecCatalog) DeepCopyInto

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

type AppCatalogEntrySpecChart

type AppCatalogEntrySpecChart struct {
	// +kubebuilder:validation:Optional
	// +nullable
	// Home is the URL of this projects home page.
	Home string `json:"home,omitempty"`
	// +kubebuilder:validation:Optional
	// +nullable
	// Icon is a URL to an SVG or PNG image to be used as an icon.
	Icon string `json:"icon,omitempty"`
}

+k8s:openapi-gen=true

func (*AppCatalogEntrySpecChart) DeepCopy

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

func (*AppCatalogEntrySpecChart) DeepCopyInto

func (in *AppCatalogEntrySpecChart) DeepCopyInto(out *AppCatalogEntrySpecChart)

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

type AppCatalogList

type AppCatalogList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata"`
	Items           []AppCatalog `json:"items"`
}

func (*AppCatalogList) DeepCopy

func (in *AppCatalogList) DeepCopy() *AppCatalogList

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

func (*AppCatalogList) DeepCopyInto

func (in *AppCatalogList) DeepCopyInto(out *AppCatalogList)

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

func (*AppCatalogList) DeepCopyObject

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

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

type AppCatalogSpec

type AppCatalogSpec struct {
	// Title is the name of the app catalog for this CR
	// e.g. Catalog of Apps by Giant Swarm
	Title       string `json:"title"`
	Description string `json:"description"`
	// +kubebuilder:validation:Optional
	// +nullable
	// Config is the config to be applied when apps belonging to this
	// catalog are deployed.
	Config AppCatalogSpecConfig `json:"config,omitempty"`
	// LogoURL contains the links for logo image file for this app catalog
	LogoURL string `json:"logoURL"`
	// Storage references a map containing values that should be applied to
	// the appcatalog.
	Storage AppCatalogSpecStorage `json:"storage"`
}

+k8s:openapi-gen=true

func (*AppCatalogSpec) DeepCopy

func (in *AppCatalogSpec) DeepCopy() *AppCatalogSpec

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

func (*AppCatalogSpec) DeepCopyInto

func (in *AppCatalogSpec) DeepCopyInto(out *AppCatalogSpec)

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

type AppCatalogSpecConfig

type AppCatalogSpecConfig struct {
	// +kubebuilder:validation:Optional
	// +nullable
	// ConfigMap references a config map containing catalog values that
	// should be applied to apps in this catalog.
	ConfigMap AppCatalogSpecConfigConfigMap `json:"configMap,omitempty"`
	// +kubebuilder:validation:Optional
	// +nullable
	// Secret references a secret containing catalog values that should be
	// applied to apps in this catalog.
	Secret AppCatalogSpecConfigSecret `json:"secret,omitempty"`
}

+k8s:openapi-gen=true

func (*AppCatalogSpecConfig) DeepCopy

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

func (*AppCatalogSpecConfig) DeepCopyInto

func (in *AppCatalogSpecConfig) DeepCopyInto(out *AppCatalogSpecConfig)

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

type AppCatalogSpecConfigConfigMap

type AppCatalogSpecConfigConfigMap struct {
	// Name is the name of the config map containing catalog values to
	// apply, e.g. app-catalog-values.
	Name string `json:"name"`
	// Namespace is the namespace of the catalog values config map,
	// e.g. giantswarm.
	Namespace string `json:"namespace"`
}

+k8s:openapi-gen=true

func (*AppCatalogSpecConfigConfigMap) DeepCopy

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

func (*AppCatalogSpecConfigConfigMap) DeepCopyInto

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

type AppCatalogSpecConfigSecret

type AppCatalogSpecConfigSecret struct {
	// Name is the name of the secret containing catalog values to apply,
	// e.g. app-catalog-secret.
	Name string `json:"name"`
	// Namespace is the namespace of the secret,
	// e.g. giantswarm.
	Namespace string `json:"namespace"`
}

+k8s:openapi-gen=true

func (*AppCatalogSpecConfigSecret) DeepCopy

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

func (*AppCatalogSpecConfigSecret) DeepCopyInto

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

type AppCatalogSpecStorage

type AppCatalogSpecStorage struct {
	// Type indicates which repository type would be used for this AppCatalog.
	// e.g. helm
	Type string `json:"type"`
	// URL is the link to where this AppCatalog's repository is located
	// e.g. https://example.com/app-catalog/
	URL string `json:"URL"`
}

+k8s:openapi-gen=true

func (*AppCatalogSpecStorage) DeepCopy

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

func (*AppCatalogSpecStorage) DeepCopyInto

func (in *AppCatalogSpecStorage) DeepCopyInto(out *AppCatalogSpecStorage)

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

type AppList

type AppList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata"`
	Items           []App `json:"items"`
}

func (*AppList) DeepCopy

func (in *AppList) DeepCopy() *AppList

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

func (*AppList) DeepCopyInto

func (in *AppList) DeepCopyInto(out *AppList)

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

func (*AppList) DeepCopyObject

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

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

type AppSpec

type AppSpec struct {
	// Catalog is the name of the app catalog this app belongs to.
	// e.g. giantswarm
	Catalog string `json:"catalog"`
	// +kubebuilder:validation:Optional
	// +nullable
	// Config is the config to be applied when the app is deployed.
	Config AppSpecConfig `json:"config,omitempty"`
	// KubeConfig is the kubeconfig to connect to the cluster when deploying
	// the app.
	KubeConfig AppSpecKubeConfig `json:"kubeConfig"`
	// Name is the name of the app to be deployed.
	// e.g. kubernetes-prometheus
	Name string `json:"name"`
	// Namespace is the namespace where the app should be deployed.
	// e.g. monitoring
	Namespace string `json:"namespace"`
	// +kubebuilder:validation:Optional
	// +nullable
	// UserConfig is the user config to be applied when the app is deployed.
	UserConfig AppSpecUserConfig `json:"userConfig,omitempty"`
	// Version is the version of the app that should be deployed.
	// e.g. 1.0.0
	Version string `json:"version"`
}

+k8s:openapi-gen=true

func (*AppSpec) DeepCopy

func (in *AppSpec) DeepCopy() *AppSpec

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

func (*AppSpec) DeepCopyInto

func (in *AppSpec) DeepCopyInto(out *AppSpec)

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

type AppSpecConfig

type AppSpecConfig struct {
	// +kubebuilder:validation:Optional
	// +nullable
	// ConfigMap references a config map containing values that should be
	// applied to the app.
	ConfigMap AppSpecConfigConfigMap `json:"configMap,omitempty"`
	// +kubebuilder:validation:Optional
	// +nullable
	// Secret references a secret containing secret values that should be
	// applied to the app.
	Secret AppSpecConfigSecret `json:"secret,omitempty"`
}

+k8s:openapi-gen=true

func (*AppSpecConfig) DeepCopy

func (in *AppSpecConfig) DeepCopy() *AppSpecConfig

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

func (*AppSpecConfig) DeepCopyInto

func (in *AppSpecConfig) DeepCopyInto(out *AppSpecConfig)

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

type AppSpecConfigConfigMap

type AppSpecConfigConfigMap struct {
	// Name is the name of the config map containing app values to apply,
	// e.g. prometheus-values.
	Name string `json:"name" `
	// Namespace is the namespace of the values config map,
	// e.g. monitoring.
	Namespace string `json:"namespace"`
}

+k8s:openapi-gen=true

func (*AppSpecConfigConfigMap) DeepCopy

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

func (*AppSpecConfigConfigMap) DeepCopyInto

func (in *AppSpecConfigConfigMap) DeepCopyInto(out *AppSpecConfigConfigMap)

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

type AppSpecConfigSecret

type AppSpecConfigSecret struct {
	// Name is the name of the secret containing app values to apply,
	// e.g. prometheus-secret.
	Name string `json:"name"`
	// Namespace is the namespace of the secret,
	// e.g. kube-system.
	Namespace string `json:"namespace"`
}

func (*AppSpecConfigSecret) DeepCopy

func (in *AppSpecConfigSecret) DeepCopy() *AppSpecConfigSecret

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

func (*AppSpecConfigSecret) DeepCopyInto

func (in *AppSpecConfigSecret) DeepCopyInto(out *AppSpecConfigSecret)

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

type AppSpecKubeConfig

type AppSpecKubeConfig struct {
	// InCluster is a flag for whether to use InCluster credentials. When true the
	// context name and secret should not be set.
	InCluster bool `json:"inCluster"`
	// +kubebuilder:validation:Optional
	// +nullable
	// Context is the kubeconfig context.
	Context AppSpecKubeConfigContext `json:"context,omitempty"`
	// +kubebuilder:validation:Optional
	// +nullable
	// Secret references a secret containing the kubconfig.
	Secret AppSpecKubeConfigSecret `json:"secret,omitempty"`
}

+k8s:openapi-gen=true

func (*AppSpecKubeConfig) DeepCopy

func (in *AppSpecKubeConfig) DeepCopy() *AppSpecKubeConfig

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

func (*AppSpecKubeConfig) DeepCopyInto

func (in *AppSpecKubeConfig) DeepCopyInto(out *AppSpecKubeConfig)

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

type AppSpecKubeConfigContext

type AppSpecKubeConfigContext struct {
	// Name is the name of the kubeconfig context.
	// e.g. giantswarm-12345.
	Name string `json:"name"`
}

+k8s:openapi-gen=true

func (*AppSpecKubeConfigContext) DeepCopy

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

func (*AppSpecKubeConfigContext) DeepCopyInto

func (in *AppSpecKubeConfigContext) DeepCopyInto(out *AppSpecKubeConfigContext)

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

type AppSpecKubeConfigSecret

type AppSpecKubeConfigSecret struct {
	// Name is the name of the secret containing the kubeconfig,
	// e.g. app-operator-kubeconfig.
	Name string `json:"name"`
	// Namespace is the namespace of the secret containing the kubeconfig,
	// e.g. giantswarm.
	Namespace string `json:"namespace"`
}

+k8s:openapi-gen=true

func (*AppSpecKubeConfigSecret) DeepCopy

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

func (*AppSpecKubeConfigSecret) DeepCopyInto

func (in *AppSpecKubeConfigSecret) DeepCopyInto(out *AppSpecKubeConfigSecret)

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

type AppSpecUserConfig

type AppSpecUserConfig struct {
	// +kubebuilder:validation:Optional
	// +nullable
	// ConfigMap references a config map containing user values that should be
	// applied to the app.
	ConfigMap AppSpecUserConfigConfigMap `json:"configMap,omitempty"`
	// +kubebuilder:validation:Optional
	// +nullable
	// Secret references a secret containing user secret values that should be
	// applied to the app.
	Secret AppSpecUserConfigSecret `json:"secret,omitempty"`
}

+k8s:openapi-gen=true

func (*AppSpecUserConfig) DeepCopy

func (in *AppSpecUserConfig) DeepCopy() *AppSpecUserConfig

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

func (*AppSpecUserConfig) DeepCopyInto

func (in *AppSpecUserConfig) DeepCopyInto(out *AppSpecUserConfig)

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

type AppSpecUserConfigConfigMap

type AppSpecUserConfigConfigMap struct {
	// Name is the name of the config map containing user values to apply,
	// e.g. prometheus-user-values.
	Name string `json:"name"`
	// Namespace is the namespace of the user values config map on the control plane,
	// e.g. 123ab.
	Namespace string `json:"namespace"`
}

+k8s:openapi-gen=true

func (*AppSpecUserConfigConfigMap) DeepCopy

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

func (*AppSpecUserConfigConfigMap) DeepCopyInto

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

type AppSpecUserConfigSecret

type AppSpecUserConfigSecret struct {
	// Name is the name of the secret containing user values to apply,
	// e.g. prometheus-user-secret.
	Name string `json:"name"`
	// Namespace is the namespace of the secret,
	// e.g. kube-system.
	Namespace string `json:"namespace"`
}

+k8s:openapi-gen=true

func (*AppSpecUserConfigSecret) DeepCopy

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

func (*AppSpecUserConfigSecret) DeepCopyInto

func (in *AppSpecUserConfigSecret) DeepCopyInto(out *AppSpecUserConfigSecret)

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

type AppStatus

type AppStatus struct {
	// AppVersion is the value of the AppVersion field in the Chart.yaml of the
	// deployed app. This is an optional field with the version of the
	// component being deployed.
	// e.g. 0.21.0.
	// https://helm.sh/docs/topics/charts/#the-chartyaml-file
	AppVersion string `json:"appVersion"`
	// Release is the status of the Helm release for the deployed app.
	Release AppStatusRelease `json:"release"`
	// Version is the value of the Version field in the Chart.yaml of the
	// deployed app.
	// e.g. 1.0.0.
	Version string `json:"version"`
}

+k8s:openapi-gen=true

func (*AppStatus) DeepCopy

func (in *AppStatus) DeepCopy() *AppStatus

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

func (*AppStatus) DeepCopyInto

func (in *AppStatus) DeepCopyInto(out *AppStatus)

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

type AppStatusRelease

type AppStatusRelease struct {
	// +kubebuilder:validation:Optional
	// +nullable
	// LastDeployed is the time when the app was last deployed.
	LastDeployed metav1.Time `json:"lastDeployed,omitempty"`
	// Reason is the description of the last status of helm release when the app is
	// not installed successfully, e.g. deploy resource already exists.
	Reason string `json:"reason,omitempty"`
	// Status is the status of the deployed app,
	// e.g. DEPLOYED.
	Status string `json:"status"`
}

+k8s:openapi-gen=true

func (*AppStatusRelease) DeepCopy

func (in *AppStatusRelease) DeepCopy() *AppStatusRelease

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

func (*AppStatusRelease) DeepCopyInto

func (in *AppStatusRelease) DeepCopyInto(out *AppStatusRelease)

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

type Chart

type Chart struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata"`
	Spec              ChartSpec `json:"spec"`
	// +kubebuilder:validation:Optional
	Status ChartStatus `json:"status"`
}

+genclient +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object +kubebuilder:storageversion +kubebuilder:subresource:status +kubebuilder:resource:categories=common;giantswarm +k8s:openapi-gen=true Chart represents a Helm Chart deployed as a Helm Release.

func NewChartCR

func NewChartCR() *Chart

NewChartCR returns an Chart Custom Resource.

func (*Chart) DeepCopy

func (in *Chart) DeepCopy() *Chart

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

func (*Chart) DeepCopyInto

func (in *Chart) DeepCopyInto(out *Chart)

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

func (*Chart) DeepCopyObject

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

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

type ChartList

type ChartList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata"`
	Items           []Chart `json:"items"`
}

func (*ChartList) DeepCopy

func (in *ChartList) DeepCopy() *ChartList

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

func (*ChartList) DeepCopyInto

func (in *ChartList) DeepCopyInto(out *ChartList)

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

func (*ChartList) DeepCopyObject

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

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

type ChartSpec

type ChartSpec struct {
	// +kubebuilder:validation:Optional
	// +nullable
	// Config is the config to be applied when the chart is deployed.
	Config ChartSpecConfig `json:"config,omitempty"`
	// Name is the name of the Helm chart to be deployed.
	// e.g. kubernetes-prometheus
	Name string `json:"name"`
	// Namespace is the namespace where the chart should be deployed.
	// e.g. monitoring
	Namespace string `json:"namespace"`
	// TarballURL is the URL for the Helm chart tarball to be deployed.
	// e.g. https://example.com/path/to/prom-1-0-0.tgz
	TarballURL string `json:"tarballURL"`
	// Version is the version of the chart that should be deployed.
	// e.g. 1.0.0
	Version string `json:"version"`
}

+k8s:openapi-gen=true

func (*ChartSpec) DeepCopy

func (in *ChartSpec) DeepCopy() *ChartSpec

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

func (*ChartSpec) DeepCopyInto

func (in *ChartSpec) DeepCopyInto(out *ChartSpec)

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

type ChartSpecConfig

type ChartSpecConfig struct {
	// +kubebuilder:validation:Optional
	// +nullable
	// ConfigMap references a config map containing values that should be
	// applied to the chart.
	ConfigMap ChartSpecConfigConfigMap `json:"configMap,omitempty"`
	// +kubebuilder:validation:Optional
	// +nullable
	// Secret references a secret containing secret values that should be
	// applied to the chart.
	Secret ChartSpecConfigSecret `json:"secret,omitempty"`
}

+k8s:openapi-gen=true

func (*ChartSpecConfig) DeepCopy

func (in *ChartSpecConfig) DeepCopy() *ChartSpecConfig

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

func (*ChartSpecConfig) DeepCopyInto

func (in *ChartSpecConfig) DeepCopyInto(out *ChartSpecConfig)

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

type ChartSpecConfigConfigMap

type ChartSpecConfigConfigMap struct {
	// Name is the name of the config map containing chart values to apply,
	// e.g. prometheus-chart-values.
	Name string `json:"name"`
	// Namespace is the namespace of the values config map,
	// e.g. monitoring.
	Namespace string `json:"namespace"`
	// ResourceVersion is the Kubernetes resource version of the configmap.
	// Used to detect if the configmap has changed, e.g. 12345.
	ResourceVersion string `json:"resourceVersion"`
}

+k8s:openapi-gen=true

func (*ChartSpecConfigConfigMap) DeepCopy

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

func (*ChartSpecConfigConfigMap) DeepCopyInto

func (in *ChartSpecConfigConfigMap) DeepCopyInto(out *ChartSpecConfigConfigMap)

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

type ChartSpecConfigSecret

type ChartSpecConfigSecret struct {
	// Name is the name of the secret containing chart values to apply,
	// e.g. prometheus-chart-secret.
	Name string `json:"name"`
	// Namespace is the namespace of the secret,
	// e.g. kube-system.
	Namespace string `json:"namespace"`
	// ResourceVersion is the Kubernetes resource version of the secret.
	// Used to detect if the secret has changed, e.g. 12345.
	ResourceVersion string `json:"resourceVersion"`
}

+k8s:openapi-gen=true

func (*ChartSpecConfigSecret) DeepCopy

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

func (*ChartSpecConfigSecret) DeepCopyInto

func (in *ChartSpecConfigSecret) DeepCopyInto(out *ChartSpecConfigSecret)

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

type ChartStatus

type ChartStatus struct {
	// AppVersion is the value of the AppVersion field in the Chart.yaml of the
	// deployed chart. This is an optional field with the version of the
	// component being deployed.
	// e.g. 0.21.0.
	// https://helm.sh/docs/topics/charts/#the-chartyaml-file
	AppVersion string `json:"appVersion"`
	// Reason is the description of the last status of helm release when the chart is
	// not installed successfully, e.g. deploy resource already exists.
	Reason string `json:"reason,omitempty"`
	// Release is the status of the Helm release for the deployed chart.
	Release ChartStatusRelease `json:"release"`
	// Version is the value of the Version field in the Chart.yaml of the
	// deployed chart.
	// e.g. 1.0.0.
	Version string `json:"version"`
}

+k8s:openapi-gen=true

func (*ChartStatus) DeepCopy

func (in *ChartStatus) DeepCopy() *ChartStatus

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

func (*ChartStatus) DeepCopyInto

func (in *ChartStatus) DeepCopyInto(out *ChartStatus)

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

type ChartStatusRelease

type ChartStatusRelease struct {
	// +kubebuilder:validation:Optional
	// +nullable
	// LastDeployed is the time when the deployed chart was last deployed.
	LastDeployed *metav1.Time `json:"lastDeployed,omitempty"`
	// +kubebuilder:validation:Optional
	// +nullable
	// Revision is the revision number for this deployed chart.
	Revision *int `json:"revision,omitempty"`
	// Status is the status of the deployed chart,
	// e.g. DEPLOYED.
	Status string `json:"status"`
}

+k8s:openapi-gen=true

func (*ChartStatusRelease) DeepCopy

func (in *ChartStatusRelease) DeepCopy() *ChartStatusRelease

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

func (*ChartStatusRelease) DeepCopyInto

func (in *ChartStatusRelease) DeepCopyInto(out *ChartStatusRelease)

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