Documentation ¶
Overview ¶
+k8s:deepcopy-gen=package +groupName=helm.cattle.io
+k8s:deepcopy-gen=package +groupName=helm.cattle.io
+k8s:deepcopy-gen=package +groupName=helm.cattle.io
Index ¶
Constants ¶
This section is empty.
Variables ¶
var ( SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes) AddToScheme = SchemeBuilder.AddToScheme )
var (
ProjectHelmChartResourceName = "projecthelmcharts"
)
var SchemeGroupVersion = schema.GroupVersion{Group: helm.GroupName, Version: "v1alpha1"}
SchemeGroupVersion is group version used to register these objects
Functions ¶
func Resource ¶
func Resource(resource string) schema.GroupResource
Resource takes an unqualified resource and returns a Group qualified GroupResource
Types ¶
type GenericMap ¶
type GenericMap map[string]interface{}
GenericMap is a wrapper on arbitrary JSON / YAML resources
func (*GenericMap) DeepCopy ¶
func (in *GenericMap) DeepCopy() *GenericMap
func (GenericMap) DeepCopyInto ¶
func (in GenericMap) DeepCopyInto(out *GenericMap)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*GenericMap) ToYAML ¶
func (in *GenericMap) ToYAML() ([]byte, error)
type ProjectHelmChart ¶
type ProjectHelmChart struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec ProjectHelmChartSpec `json:"spec"` Status ProjectHelmChartStatus `json:"status"` }
ProjectHelmChart specifies a managed Helm chart that should be deployed for a "Project" (defined as any set of namespaces that can be targeted by a label selector) and be updated automatically on changing definitions of that project (e.g. namespaces added or removed). It is a parent object that creates HelmCharts and HelmReleases under the hood via wrangler.Apply and relatedresource.Watch
func NewProjectHelmChart ¶
func NewProjectHelmChart(namespace, name string, obj ProjectHelmChart) *ProjectHelmChart
func (*ProjectHelmChart) DeepCopy ¶
func (in *ProjectHelmChart) DeepCopy() *ProjectHelmChart
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProjectHelmChart.
func (*ProjectHelmChart) DeepCopyInto ¶
func (in *ProjectHelmChart) DeepCopyInto(out *ProjectHelmChart)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ProjectHelmChart) DeepCopyObject ¶
func (in *ProjectHelmChart) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ProjectHelmChartList ¶
type ProjectHelmChartList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata"` Items []ProjectHelmChart `json:"items"` }
ProjectHelmChartList is a list of ProjectHelmChart resources
func (*ProjectHelmChartList) DeepCopy ¶
func (in *ProjectHelmChartList) DeepCopy() *ProjectHelmChartList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProjectHelmChartList.
func (*ProjectHelmChartList) DeepCopyInto ¶
func (in *ProjectHelmChartList) DeepCopyInto(out *ProjectHelmChartList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ProjectHelmChartList) DeepCopyObject ¶
func (in *ProjectHelmChartList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ProjectHelmChartSpec ¶
type ProjectHelmChartSpec struct { // HelmAPIVersion identifies whether a particular rendition of the Helm Project Operator // should watch ProjectHelmChart of this type. e.g. monitoring.cattle.io/v1alpha1 is watched by Prometheus Federator HelmAPIVersion string `json:"helmApiVersion"` // ProjectNamespaceSelector is a namespaceSelector that identifies the project this underlying chart should be targeting // If a project label is provided as part of the Operator's runtime options, this field will be ignored since ProjectHelmCharts // will be created in dedicated project namespaces with a pre-defined project namespace selector ProjectNamespaceSelector *metav1.LabelSelector `json:"projectNamespaceSelector"` // Values is a generic map (e.g. generic yaml) representing the values.yaml used to configure the underlying Helm chart that // will be deployed for this Values GenericMap `json:"values"` }
ProjectHelmChartSpec defines the spec of a ProjectHelmChart
func (*ProjectHelmChartSpec) DeepCopy ¶
func (in *ProjectHelmChartSpec) DeepCopy() *ProjectHelmChartSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProjectHelmChartSpec.
func (*ProjectHelmChartSpec) DeepCopyInto ¶
func (in *ProjectHelmChartSpec) DeepCopyInto(out *ProjectHelmChartSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ProjectHelmChartStatus ¶
type ProjectHelmChartStatus struct { // DashboardValues are values provided to the ProjectHelmChart from ConfigMaps in the Project Release namespace // tagged with 'helm.cattle.io/dashboard-values-configmap': '{{ .Release.Name }}' DashboardValues GenericMap `json:"dashboardValues"` // Status is the current status of this ProjectHelmChart // Please see pkg/controllers/project/status.go for possible states Status string `json:"status"` // StatusMessage is a detailed message explaining the current status of the ProjectHelmChart // Please see pkg/controllers/project/status.go for possible state messages StatusMessage string `json:"statusMessage"` // SystemNamespace is the namespace where HelmCharts and HelmReleases will be deployed SystemNamespace string `json:"systemNamespace"` // ReleaseNamespace is the namespace where the underlying Helm chart will be deployed // Also known as the Project Release Namespace ReleaseNamespace string `json:"releaseNamespace"` // ReleaseName is the name of the Helm Release contained in the Project Release Namespace ReleaseName string `json:"releaseName"` // TargetNamespaces are the current set of namespaces targeted by the namespaceSelector // that this ProjectHelmChart was configured with. As noted above, this will correspond // to the Project Registration Namespace's selector if project label is provided TargetNamespaces []string `json:"targetNamespaces"` }
func (*ProjectHelmChartStatus) DeepCopy ¶
func (in *ProjectHelmChartStatus) DeepCopy() *ProjectHelmChartStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProjectHelmChartStatus.
func (*ProjectHelmChartStatus) DeepCopyInto ¶
func (in *ProjectHelmChartStatus) DeepCopyInto(out *ProjectHelmChartStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.