Documentation
¶
Overview ¶
Package v1alpha1 contains API Schema definitions for the v1alpha1 API group. +kubebuilder:object:generate=true +groupName=cozystack.io
Index ¶
- Variables
- type ApplicationDefinition
- type ApplicationDefinitionApplication
- type ApplicationDefinitionDashboard
- type ApplicationDefinitionList
- type ApplicationDefinitionRelease
- type ApplicationDefinitionResourceSelector
- type ApplicationDefinitionResources
- type ApplicationDefinitionSpec
- type Component
- type ComponentInstall
- type DashboardTab
- type DependencyStatus
- type Library
- type Package
- type PackageComponent
- type PackageList
- type PackageSource
- type PackageSourceList
- type PackageSourceRef
- type PackageSourceSpec
- type PackageSourceStatus
- type PackageSpec
- type PackageStatus
- type Selector
- type Variant
- type Workload
- type WorkloadList
- type WorkloadMonitor
- type WorkloadMonitorList
- type WorkloadMonitorSpec
- type WorkloadMonitorStatus
- type WorkloadStatus
Constants ¶
This section is empty.
Variables ¶
var ( // GroupVersion is group version used to register these objects. GroupVersion = schema.GroupVersion{Group: "cozystack.io", 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 ApplicationDefinition ¶ added in v1.0.0
type ApplicationDefinition struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec ApplicationDefinitionSpec `json:"spec,omitempty"`
}
ApplicationDefinition is the Schema for the applicationdefinitions API
func (*ApplicationDefinition) DeepCopy ¶ added in v1.0.0
func (in *ApplicationDefinition) DeepCopy() *ApplicationDefinition
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ApplicationDefinition.
func (*ApplicationDefinition) DeepCopyInto ¶ added in v1.0.0
func (in *ApplicationDefinition) DeepCopyInto(out *ApplicationDefinition)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ApplicationDefinition) DeepCopyObject ¶ added in v1.0.0
func (in *ApplicationDefinition) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ApplicationDefinitionApplication ¶ added in v1.0.0
type ApplicationDefinitionApplication struct {
// Kind of the application, used for UI and API
Kind string `json:"kind"`
// OpenAPI schema for the application, used for API validation
OpenAPISchema string `json:"openAPISchema"`
// Plural name of the application, used for UI and API
Plural string `json:"plural"`
// Singular name of the application, used for UI and API
Singular string `json:"singular"`
}
func (*ApplicationDefinitionApplication) DeepCopy ¶ added in v1.0.0
func (in *ApplicationDefinitionApplication) DeepCopy() *ApplicationDefinitionApplication
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ApplicationDefinitionApplication.
func (*ApplicationDefinitionApplication) DeepCopyInto ¶ added in v1.0.0
func (in *ApplicationDefinitionApplication) DeepCopyInto(out *ApplicationDefinitionApplication)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ApplicationDefinitionDashboard ¶ added in v1.0.0
type ApplicationDefinitionDashboard struct {
// Human-readable name shown in the UI (e.g., "Bucket")
Singular string `json:"singular"`
// Plural human-readable name (e.g., "Buckets")
Plural string `json:"plural"`
// Hard-coded name used in the UI (e.g., "bucket")
// +optional
Name string `json:"name,omitempty"`
// Whether this resource is singular (not a collection) in the UI
// +optional
SingularResource bool `json:"singularResource,omitempty"`
// Order weight for sorting resources in the UI (lower first)
// +optional
Weight int `json:"weight,omitempty"`
// Short description shown in catalogs or headers (e.g., "S3 compatible storage")
// +optional
Description string `json:"description,omitempty"`
// Icon encoded as a string (e.g., inline SVG, base64, or data URI)
// +optional
Icon string `json:"icon,omitempty"`
// Category used to group resources in the UI (e.g., "Storage", "Networking")
Category string `json:"category"`
// Free-form tags for search and filtering
// +optional
Tags []string `json:"tags,omitempty"`
// Which tabs to show for this resource
// +optional
Tabs []DashboardTab `json:"tabs,omitempty"`
// Order of keys in the YAML view
// +optional
KeysOrder [][]string `json:"keysOrder,omitempty"`
// Whether this resource is a module (tenant module)
// +optional
Module bool `json:"module,omitempty"`
}
ApplicationDefinitionDashboard describes how this resource appears in the UI.
func (*ApplicationDefinitionDashboard) DeepCopy ¶ added in v1.0.0
func (in *ApplicationDefinitionDashboard) DeepCopy() *ApplicationDefinitionDashboard
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ApplicationDefinitionDashboard.
func (*ApplicationDefinitionDashboard) DeepCopyInto ¶ added in v1.0.0
func (in *ApplicationDefinitionDashboard) DeepCopyInto(out *ApplicationDefinitionDashboard)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ApplicationDefinitionList ¶ added in v1.0.0
type ApplicationDefinitionList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []ApplicationDefinition `json:"items"`
}
ApplicationDefinitionList contains a list of ApplicationDefinitions
func (*ApplicationDefinitionList) DeepCopy ¶ added in v1.0.0
func (in *ApplicationDefinitionList) DeepCopy() *ApplicationDefinitionList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ApplicationDefinitionList.
func (*ApplicationDefinitionList) DeepCopyInto ¶ added in v1.0.0
func (in *ApplicationDefinitionList) DeepCopyInto(out *ApplicationDefinitionList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ApplicationDefinitionList) DeepCopyObject ¶ added in v1.0.0
func (in *ApplicationDefinitionList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ApplicationDefinitionRelease ¶ added in v1.0.0
type ApplicationDefinitionRelease struct {
// Reference to the chart source
ChartRef *helmv2.CrossNamespaceSourceReference `json:"chartRef"`
// Labels for the release
Labels map[string]string `json:"labels,omitempty"`
// Prefix for the release name
Prefix string `json:"prefix"`
}
func (*ApplicationDefinitionRelease) DeepCopy ¶ added in v1.0.0
func (in *ApplicationDefinitionRelease) DeepCopy() *ApplicationDefinitionRelease
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ApplicationDefinitionRelease.
func (*ApplicationDefinitionRelease) DeepCopyInto ¶ added in v1.0.0
func (in *ApplicationDefinitionRelease) DeepCopyInto(out *ApplicationDefinitionRelease)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ApplicationDefinitionResourceSelector ¶ added in v1.0.0
type ApplicationDefinitionResourceSelector struct {
metav1.LabelSelector `json:",inline"`
// ResourceNames is a list of resource names to match
// If specified, the resource must have one of these exact names to match the selector
// +optional
ResourceNames []string `json:"resourceNames,omitempty"`
}
ApplicationDefinitionResourceSelector extends metav1.LabelSelector with resourceNames support. A resource matches this selector only if it satisfies ALL criteria: - Label selector conditions (matchExpressions and matchLabels) - AND has a name that matches one of the names in resourceNames (if specified)
The resourceNames field supports Go templates with the following variables available: - {{ .name }}: The name of the managing application (from apps.cozystack.io/application.name) - {{ .kind }}: The lowercased kind of the managing application (from apps.cozystack.io/application.kind) - {{ .namespace }}: The namespace of the resource being processed
Example YAML:
secrets:
include:
- matchExpressions:
- key: badlabel
operator: DoesNotExist
matchLabels:
goodlabel: goodvalue
resourceNames:
- "{{ .name }}-secret"
- "{{ .kind }}-{{ .name }}-tls"
- "specificname"
func (*ApplicationDefinitionResourceSelector) DeepCopy ¶ added in v1.0.0
func (in *ApplicationDefinitionResourceSelector) DeepCopy() *ApplicationDefinitionResourceSelector
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ApplicationDefinitionResourceSelector.
func (*ApplicationDefinitionResourceSelector) DeepCopyInto ¶ added in v1.0.0
func (in *ApplicationDefinitionResourceSelector) DeepCopyInto(out *ApplicationDefinitionResourceSelector)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ApplicationDefinitionResources ¶ added in v1.0.0
type ApplicationDefinitionResources struct {
// Exclude contains an array of resource selectors that target resources.
// If a resource matches the selector in any of the elements in the array, it is
// hidden from the user, regardless of the matches in the include array.
Exclude []*ApplicationDefinitionResourceSelector `json:"exclude,omitempty"`
// Include contains an array of resource selectors that target resources.
// If a resource matches the selector in any of the elements in the array, and
// matches none of the selectors in the exclude array that resource is marked
// as a tenant resource and is visible to users.
Include []*ApplicationDefinitionResourceSelector `json:"include,omitempty"`
}
func (*ApplicationDefinitionResources) DeepCopy ¶ added in v1.0.0
func (in *ApplicationDefinitionResources) DeepCopy() *ApplicationDefinitionResources
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ApplicationDefinitionResources.
func (*ApplicationDefinitionResources) DeepCopyInto ¶ added in v1.0.0
func (in *ApplicationDefinitionResources) DeepCopyInto(out *ApplicationDefinitionResources)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ApplicationDefinitionSpec ¶ added in v1.0.0
type ApplicationDefinitionSpec struct {
// Application configuration
Application ApplicationDefinitionApplication `json:"application"`
// Release configuration
Release ApplicationDefinitionRelease `json:"release"`
// Secret selectors
Secrets ApplicationDefinitionResources `json:"secrets,omitempty"`
// Service selectors
Services ApplicationDefinitionResources `json:"services,omitempty"`
// Ingress selectors
Ingresses ApplicationDefinitionResources `json:"ingresses,omitempty"`
// Dashboard configuration for this resource
Dashboard *ApplicationDefinitionDashboard `json:"dashboard,omitempty"`
}
func (*ApplicationDefinitionSpec) DeepCopy ¶ added in v1.0.0
func (in *ApplicationDefinitionSpec) DeepCopy() *ApplicationDefinitionSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ApplicationDefinitionSpec.
func (*ApplicationDefinitionSpec) DeepCopyInto ¶ added in v1.0.0
func (in *ApplicationDefinitionSpec) DeepCopyInto(out *ApplicationDefinitionSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Component ¶ added in v1.0.0
type Component struct {
// Name is the unique identifier for this component within the package source
// +required
Name string `json:"name"`
// Path is the path to the Helm chart directory
// +required
Path string `json:"path"`
// Install defines installation parameters for this component
// +optional
Install *ComponentInstall `json:"install,omitempty"`
// Libraries is a list of library names that this component depends on
// These libraries must be defined at the variant level
// +optional
Libraries []string `json:"libraries,omitempty"`
// ValuesFiles is a list of values file names to use
// +optional
ValuesFiles []string `json:"valuesFiles,omitempty"`
}
Component defines a single Helm release component within a package source
func (*Component) DeepCopy ¶ added in v1.0.0
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Component.
func (*Component) DeepCopyInto ¶ added in v1.0.0
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ComponentInstall ¶ added in v1.0.0
type ComponentInstall struct {
// ReleaseName is the name of the HelmRelease resource that will be created
// If not specified, defaults to the component Name field
// +optional
ReleaseName string `json:"releaseName,omitempty"`
// Namespace is the Kubernetes namespace where the release will be installed
// +optional
Namespace string `json:"namespace,omitempty"`
// Privileged indicates whether this release requires privileged access
// +optional
Privileged bool `json:"privileged,omitempty"`
// DependsOn is a list of component names that must be installed before this component
// +optional
DependsOn []string `json:"dependsOn,omitempty"`
}
ComponentInstall defines installation parameters for a component
func (*ComponentInstall) DeepCopy ¶ added in v1.0.0
func (in *ComponentInstall) DeepCopy() *ComponentInstall
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ComponentInstall.
func (*ComponentInstall) DeepCopyInto ¶ added in v1.0.0
func (in *ComponentInstall) DeepCopyInto(out *ComponentInstall)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DashboardTab ¶ added in v0.37.0
type DashboardTab string
DashboardTab enumerates allowed UI tabs. +kubebuilder:validation:Enum=workloads;ingresses;services;secrets;yaml
const ( DashboardTabWorkloads DashboardTab = "workloads" DashboardTabIngresses DashboardTab = "ingresses" DashboardTabServices DashboardTab = "services" DashboardTabSecrets DashboardTab = "secrets" DashboardTabYAML DashboardTab = "yaml" )
type DependencyStatus ¶ added in v1.0.0
type DependencyStatus struct {
// Ready indicates whether the dependency is ready
Ready bool `json:"ready"`
}
DependencyStatus represents the readiness status of a dependency
func (*DependencyStatus) DeepCopy ¶ added in v1.0.0
func (in *DependencyStatus) DeepCopy() *DependencyStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DependencyStatus.
func (*DependencyStatus) DeepCopyInto ¶ added in v1.0.0
func (in *DependencyStatus) DeepCopyInto(out *DependencyStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Library ¶ added in v1.0.0
type Library struct {
// Name is the optional name for library placed in charts
// +optional
Name string `json:"name,omitempty"`
// Path is the path to the library chart directory
// +required
Path string `json:"path"`
}
Library defines a Helm library chart
func (*Library) DeepCopy ¶ added in v1.0.0
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Library.
func (*Library) DeepCopyInto ¶ added in v1.0.0
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Package ¶ added in v1.0.0
type Package struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec PackageSpec `json:"spec,omitempty"`
Status PackageStatus `json:"status,omitempty"`
}
Package is the Schema for the packages API
func (*Package) DeepCopy ¶ added in v1.0.0
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Package.
func (*Package) DeepCopyInto ¶ added in v1.0.0
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Package) DeepCopyObject ¶ added in v1.0.0
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type PackageComponent ¶ added in v1.0.0
type PackageComponent struct {
// Enabled indicates whether this component should be installed
// If false, the component will be disabled even if it's defined in the PackageSource
// +optional
Enabled *bool `json:"enabled,omitempty"`
// Values contains Helm chart values as a JSON object
// These values will be merged with the default values from the PackageSource
// +optional
Values *apiextensionsv1.JSON `json:"values,omitempty"`
}
PackageComponent defines overrides for a specific component
func (*PackageComponent) DeepCopy ¶ added in v1.0.0
func (in *PackageComponent) DeepCopy() *PackageComponent
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PackageComponent.
func (*PackageComponent) DeepCopyInto ¶ added in v1.0.0
func (in *PackageComponent) DeepCopyInto(out *PackageComponent)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PackageList ¶ added in v1.0.0
type PackageList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []Package `json:"items"`
}
PackageList contains a list of Packages
func (*PackageList) DeepCopy ¶ added in v1.0.0
func (in *PackageList) DeepCopy() *PackageList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PackageList.
func (*PackageList) DeepCopyInto ¶ added in v1.0.0
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 ¶ added in v1.0.0
func (in *PackageList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type PackageSource ¶ added in v1.0.0
type PackageSource struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec PackageSourceSpec `json:"spec,omitempty"`
Status PackageSourceStatus `json:"status,omitempty"`
}
PackageSource is the Schema for the packagesources API
func (*PackageSource) DeepCopy ¶ added in v1.0.0
func (in *PackageSource) DeepCopy() *PackageSource
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PackageSource.
func (*PackageSource) DeepCopyInto ¶ added in v1.0.0
func (in *PackageSource) DeepCopyInto(out *PackageSource)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*PackageSource) DeepCopyObject ¶ added in v1.0.0
func (in *PackageSource) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type PackageSourceList ¶ added in v1.0.0
type PackageSourceList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []PackageSource `json:"items"`
}
PackageSourceList contains a list of PackageSources
func (*PackageSourceList) DeepCopy ¶ added in v1.0.0
func (in *PackageSourceList) DeepCopy() *PackageSourceList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PackageSourceList.
func (*PackageSourceList) DeepCopyInto ¶ added in v1.0.0
func (in *PackageSourceList) DeepCopyInto(out *PackageSourceList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*PackageSourceList) DeepCopyObject ¶ added in v1.0.0
func (in *PackageSourceList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type PackageSourceRef ¶ added in v1.0.0
type PackageSourceRef struct {
// Kind of the source reference
// +kubebuilder:validation:Enum=GitRepository;OCIRepository
// +required
Kind string `json:"kind"`
// Name of the source reference
// +required
Name string `json:"name"`
// Namespace of the source reference
// +required
Namespace string `json:"namespace"`
// Path is the base path where packages are located in the source.
// For GitRepository, defaults to "packages" if not specified.
// For OCIRepository, defaults to empty string (root) if not specified.
// +optional
Path string `json:"path,omitempty"`
}
PackageSourceRef defines the source reference for package source charts
func (*PackageSourceRef) DeepCopy ¶ added in v1.0.0
func (in *PackageSourceRef) DeepCopy() *PackageSourceRef
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PackageSourceRef.
func (*PackageSourceRef) DeepCopyInto ¶ added in v1.0.0
func (in *PackageSourceRef) DeepCopyInto(out *PackageSourceRef)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PackageSourceSpec ¶ added in v1.0.0
type PackageSourceSpec struct {
// SourceRef is the source reference for the package source charts
// +optional
SourceRef *PackageSourceRef `json:"sourceRef,omitempty"`
// Variants is a list of package source variants
// Each variant defines components, applications, dependencies, and libraries for a specific configuration
// +optional
Variants []Variant `json:"variants,omitempty"`
}
PackageSourceSpec defines the desired state of PackageSource
func (*PackageSourceSpec) DeepCopy ¶ added in v1.0.0
func (in *PackageSourceSpec) DeepCopy() *PackageSourceSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PackageSourceSpec.
func (*PackageSourceSpec) DeepCopyInto ¶ added in v1.0.0
func (in *PackageSourceSpec) DeepCopyInto(out *PackageSourceSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PackageSourceStatus ¶ added in v1.0.0
type PackageSourceStatus struct {
// Variants is a comma-separated list of package variant names
// This field is populated by the controller based on spec.variants keys
// +optional
Variants string `json:"variants,omitempty"`
// Conditions represents the latest available observations of a PackageSource's state
// +optional
Conditions []metav1.Condition `json:"conditions,omitempty"`
}
PackageSourceStatus defines the observed state of PackageSource
func (*PackageSourceStatus) DeepCopy ¶ added in v1.0.0
func (in *PackageSourceStatus) DeepCopy() *PackageSourceStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PackageSourceStatus.
func (*PackageSourceStatus) DeepCopyInto ¶ added in v1.0.0
func (in *PackageSourceStatus) DeepCopyInto(out *PackageSourceStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PackageSpec ¶ added in v1.0.0
type PackageSpec struct {
// Variant is the name of the variant to use from the PackageSource
// If not specified, defaults to "default"
// +optional
Variant string `json:"variant,omitempty"`
// IgnoreDependencies is a list of package source dependencies to ignore
// Dependencies listed here will not be installed even if they are specified in the PackageSource
// +optional
IgnoreDependencies []string `json:"ignoreDependencies,omitempty"`
// Components is a map of release name to component overrides
// Allows overriding values and enabling/disabling specific components from the PackageSource
// +optional
Components map[string]PackageComponent `json:"components,omitempty"`
}
PackageSpec defines the desired state of Package
func (*PackageSpec) DeepCopy ¶ added in v1.0.0
func (in *PackageSpec) DeepCopy() *PackageSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PackageSpec.
func (*PackageSpec) DeepCopyInto ¶ added in v1.0.0
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 ¶ added in v1.0.0
type PackageStatus struct {
// Conditions represents the latest available observations of a Package's state
// +optional
Conditions []metav1.Condition `json:"conditions,omitempty"`
// Dependencies tracks the readiness status of each dependency
// Key is the dependency package name, value indicates if the dependency is ready
// +optional
Dependencies map[string]DependencyStatus `json:"dependencies,omitempty"`
}
PackageStatus defines the observed state of Package
func (*PackageStatus) DeepCopy ¶ added in v1.0.0
func (in *PackageStatus) DeepCopy() *PackageStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PackageStatus.
func (*PackageStatus) DeepCopyInto ¶ added in v1.0.0
func (in *PackageStatus) DeepCopyInto(out *PackageStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Selector ¶
Selector specifies the label selector for workloads
func (Selector) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Selector.
func (Selector) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Variant ¶ added in v1.0.0
type Variant struct {
// Name is the unique identifier for this variant
// +required
Name string `json:"name"`
// DependsOn is a list of package source dependencies
// For example: "cozystack.networking"
// +optional
DependsOn []string `json:"dependsOn,omitempty"`
// Libraries is a list of Helm library charts used by components in this variant
// +optional
Libraries []Library `json:"libraries,omitempty"`
// Components is a list of Helm releases to be installed as part of this variant
// +optional
Components []Component `json:"components,omitempty"`
}
Variant defines a single variant configuration
func (*Variant) DeepCopy ¶ added in v1.0.0
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Variant.
func (*Variant) DeepCopyInto ¶ added in v1.0.0
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Workload ¶
type Workload struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Status WorkloadStatus `json:"status,omitempty"`
}
Workload is the Schema for the workloads API
func (*Workload) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Workload.
func (*Workload) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Workload) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type WorkloadList ¶
type WorkloadList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []Workload `json:"items"`
}
WorkloadList contains a list of Workload
func (*WorkloadList) DeepCopy ¶
func (in *WorkloadList) DeepCopy() *WorkloadList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WorkloadList.
func (*WorkloadList) DeepCopyInto ¶
func (in *WorkloadList) DeepCopyInto(out *WorkloadList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*WorkloadList) DeepCopyObject ¶
func (in *WorkloadList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type WorkloadMonitor ¶
type WorkloadMonitor struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec WorkloadMonitorSpec `json:"spec,omitempty"`
Status WorkloadMonitorStatus `json:"status,omitempty"`
}
WorkloadMonitor is the Schema for the workloadmonitors API
func (*WorkloadMonitor) DeepCopy ¶
func (in *WorkloadMonitor) DeepCopy() *WorkloadMonitor
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WorkloadMonitor.
func (*WorkloadMonitor) DeepCopyInto ¶
func (in *WorkloadMonitor) DeepCopyInto(out *WorkloadMonitor)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*WorkloadMonitor) DeepCopyObject ¶
func (in *WorkloadMonitor) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*WorkloadMonitor) GetSelector ¶
func (w *WorkloadMonitor) GetSelector() map[string]string
GetSelector returns the label selector from metadata
type WorkloadMonitorList ¶
type WorkloadMonitorList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []WorkloadMonitor `json:"items"`
}
WorkloadMonitorList contains a list of WorkloadMonitor
func (*WorkloadMonitorList) DeepCopy ¶
func (in *WorkloadMonitorList) DeepCopy() *WorkloadMonitorList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WorkloadMonitorList.
func (*WorkloadMonitorList) DeepCopyInto ¶
func (in *WorkloadMonitorList) DeepCopyInto(out *WorkloadMonitorList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*WorkloadMonitorList) DeepCopyObject ¶
func (in *WorkloadMonitorList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type WorkloadMonitorSpec ¶
type WorkloadMonitorSpec struct {
// Selector is a label selector to find workloads to monitor
// +required
Selector map[string]string `json:"selector"`
// Kind specifies the kind of the workload
// +optional
Kind string `json:"kind,omitempty"`
// Type specifies the type of the workload
// +optional
Type string `json:"type,omitempty"`
// Version specifies the version of the workload
// +optional
Version string `json:"version,omitempty"`
// MinReplicas specifies the minimum number of replicas that should be available
// +kubebuilder:validation:Minimum=0
// +optional
MinReplicas *int32 `json:"minReplicas,omitempty"`
// Replicas is the desired number of replicas
// If not specified, will use observedReplicas as the target
// +kubebuilder:validation:Minimum=0
// +optional
Replicas *int32 `json:"replicas,omitempty"`
}
WorkloadMonitorSpec defines the desired state of WorkloadMonitor
func (*WorkloadMonitorSpec) DeepCopy ¶
func (in *WorkloadMonitorSpec) DeepCopy() *WorkloadMonitorSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WorkloadMonitorSpec.
func (*WorkloadMonitorSpec) DeepCopyInto ¶
func (in *WorkloadMonitorSpec) DeepCopyInto(out *WorkloadMonitorSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type WorkloadMonitorStatus ¶
type WorkloadMonitorStatus struct {
// Operational indicates if the workload meets all operational requirements
// +optional
Operational *bool `json:"operational,omitempty"`
// AvailableReplicas is the number of ready replicas
// +optional
AvailableReplicas int32 `json:"availableReplicas"`
// ObservedReplicas is the total number of pods observed
// +optional
ObservedReplicas int32 `json:"observedReplicas"`
}
WorkloadMonitorStatus defines the observed state of WorkloadMonitor
func (*WorkloadMonitorStatus) DeepCopy ¶
func (in *WorkloadMonitorStatus) DeepCopy() *WorkloadMonitorStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WorkloadMonitorStatus.
func (*WorkloadMonitorStatus) DeepCopyInto ¶
func (in *WorkloadMonitorStatus) DeepCopyInto(out *WorkloadMonitorStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type WorkloadStatus ¶
type WorkloadStatus struct {
// Kind represents the type of workload (redis, postgres, etc.)
// +required
Kind string `json:"kind"`
// Type represents the specific role of the workload (redis, sentinel, etc.)
// If not specified, defaults to Kind
// +optional
Type string `json:"type,omitempty"`
// Resources specifies the compute resources allocated to this workload
// +required
Resources map[string]resource.Quantity `json:"resources"`
// Operational indicates if all pods of the workload are ready
// +optional
Operational bool `json:"operational"`
}
WorkloadStatus defines the observed state of Workload
func (*WorkloadStatus) DeepCopy ¶
func (in *WorkloadStatus) DeepCopy() *WorkloadStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WorkloadStatus.
func (*WorkloadStatus) DeepCopyInto ¶
func (in *WorkloadStatus) DeepCopyInto(out *WorkloadStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.