Documentation
¶
Overview ¶
Package v1beta1 contains API Schema definitions for the grafana v1beta1 API group +kubebuilder:object:generate=true +groupName=grafana.integreatly.org
Index ¶
- Variables
- func Gunzip(compressed []byte) ([]byte, error)
- func Gzip(content []byte) ([]byte, error)
- func Merge(base, overrides interface{}) error
- type AlertQuery
- type AlertRule
- type CommonResource
- type DashboardSourceType
- type DeploymentV1
- type DeploymentV1PodSpec
- type DeploymentV1PodTemplateSpec
- type DeploymentV1Spec
- type External
- type Grafana
- type GrafanaAlertRuleGroup
- func (in *GrafanaAlertRuleGroup) Conditions() *[]metav1.Condition
- func (in *GrafanaAlertRuleGroup) CurrentGeneration() int64
- func (in *GrafanaAlertRuleGroup) DeepCopy() *GrafanaAlertRuleGroup
- func (in *GrafanaAlertRuleGroup) DeepCopyInto(out *GrafanaAlertRuleGroup)
- func (in *GrafanaAlertRuleGroup) DeepCopyObject() runtime.Object
- func (in *GrafanaAlertRuleGroup) FolderNamespace() string
- func (in *GrafanaAlertRuleGroup) FolderRef() string
- func (in *GrafanaAlertRuleGroup) FolderUID() string
- func (in *GrafanaAlertRuleGroup) GroupName() string
- type GrafanaAlertRuleGroupList
- type GrafanaAlertRuleGroupSpec
- type GrafanaClient
- type GrafanaComDashboardReference
- type GrafanaCommonSpec
- type GrafanaCommonStatus
- type GrafanaContactPoint
- func (in *GrafanaContactPoint) AllowCrossNamespace() bool
- func (in *GrafanaContactPoint) CustomUIDOrUID() string
- func (in *GrafanaContactPoint) DeepCopy() *GrafanaContactPoint
- func (in *GrafanaContactPoint) DeepCopyInto(out *GrafanaContactPoint)
- func (in *GrafanaContactPoint) DeepCopyObject() runtime.Object
- func (in *GrafanaContactPoint) MatchLabels() *metav1.LabelSelector
- func (in *GrafanaContactPoint) MatchNamespace() string
- type GrafanaContactPointList
- type GrafanaContactPointSpec
- type GrafanaDashboard
- func (in *GrafanaDashboard) Conditions() *[]metav1.Condition
- func (in *GrafanaDashboard) CurrentGeneration() int64
- func (in *GrafanaDashboard) CustomUIDOrUID(dashboardUID string) string
- func (in *GrafanaDashboard) DeepCopy() *GrafanaDashboard
- func (in *GrafanaDashboard) DeepCopyInto(out *GrafanaDashboard)
- func (in *GrafanaDashboard) DeepCopyObject() runtime.Object
- func (in *GrafanaDashboard) FolderNamespace() string
- func (in *GrafanaDashboard) FolderRef() string
- func (in *GrafanaDashboard) FolderUID() string
- func (in *GrafanaDashboard) GetContentCache() []byte
- func (in *GrafanaDashboard) GetSourceTypes() []DashboardSourceType
- func (in *GrafanaDashboard) IsAllowCrossNamespaceImport() bool
- func (in *GrafanaDashboard) IsUpdatedUID(uid string) bool
- func (in *GrafanaDashboard) ResyncPeriodHasElapsed() bool
- func (in *GrafanaDashboard) Unchanged(hash string) bool
- type GrafanaDashboardDatasource
- type GrafanaDashboardEnv
- type GrafanaDashboardEnvFromSource
- type GrafanaDashboardList
- type GrafanaDashboardSpec
- type GrafanaDashboardStatus
- type GrafanaDashboardUrlAuthorization
- type GrafanaDashboardUrlBasicAuth
- type GrafanaDatasource
- func (in *GrafanaDatasource) CustomUIDOrUID() string
- func (in *GrafanaDatasource) DeepCopy() *GrafanaDatasource
- func (in *GrafanaDatasource) DeepCopyInto(out *GrafanaDatasource)
- func (in *GrafanaDatasource) DeepCopyObject() runtime.Object
- func (in *GrafanaDatasource) IsAllowCrossNamespaceImport() bool
- func (in *GrafanaDatasource) IsUpdatedUID() bool
- func (in *GrafanaDatasource) ResyncPeriodHasElapsed() bool
- func (in *GrafanaDatasource) Unchanged(hash string) bool
- type GrafanaDatasourceInternal
- type GrafanaDatasourceList
- type GrafanaDatasourceSpec
- type GrafanaDatasourceStatus
- type GrafanaFolder
- func (in *GrafanaFolder) AllowCrossNamespace() bool
- func (in *GrafanaFolder) Conditions() *[]metav1.Condition
- func (in *GrafanaFolder) CurrentGeneration() int64
- func (in *GrafanaFolder) CustomUIDOrUID() string
- func (in *GrafanaFolder) DeepCopy() *GrafanaFolder
- func (in *GrafanaFolder) DeepCopyInto(out *GrafanaFolder)
- func (in *GrafanaFolder) DeepCopyObject() runtime.Object
- func (in *GrafanaFolder) FolderNamespace() string
- func (in *GrafanaFolder) FolderRef() string
- func (in *GrafanaFolder) FolderUID() string
- func (in *GrafanaFolder) GetTitle() string
- func (in *GrafanaFolder) Hash() string
- func (in *GrafanaFolder) MatchLabels() *metav1.LabelSelector
- func (in *GrafanaFolder) MatchNamespace() string
- func (in *GrafanaFolder) ResyncPeriodHasElapsed() bool
- func (in *GrafanaFolder) Unchanged() bool
- type GrafanaFolderList
- type GrafanaFolderSpec
- type GrafanaFolderStatus
- type GrafanaList
- type GrafanaNotificationPolicy
- func (in *GrafanaNotificationPolicy) AllowCrossNamespace() bool
- func (in *GrafanaNotificationPolicy) DeepCopy() *GrafanaNotificationPolicy
- func (in *GrafanaNotificationPolicy) DeepCopyInto(out *GrafanaNotificationPolicy)
- func (in *GrafanaNotificationPolicy) DeepCopyObject() runtime.Object
- func (in *GrafanaNotificationPolicy) MatchLabels() *metav1.LabelSelector
- func (in *GrafanaNotificationPolicy) MatchNamespace() string
- func (np *GrafanaNotificationPolicy) NamespacedResource() string
- type GrafanaNotificationPolicyList
- type GrafanaNotificationPolicySpec
- type GrafanaNotificationTemplate
- func (in *GrafanaNotificationTemplate) AllowCrossNamespace() bool
- func (in *GrafanaNotificationTemplate) DeepCopy() *GrafanaNotificationTemplate
- func (in *GrafanaNotificationTemplate) DeepCopyInto(out *GrafanaNotificationTemplate)
- func (in *GrafanaNotificationTemplate) DeepCopyObject() runtime.Object
- func (in *GrafanaNotificationTemplate) MatchLabels() *metav1.LabelSelector
- func (in *GrafanaNotificationTemplate) MatchNamespace() string
- func (np *GrafanaNotificationTemplate) NamespacedResource() string
- type GrafanaNotificationTemplateList
- type GrafanaNotificationTemplateSpec
- type GrafanaPlugin
- type GrafanaPreferences
- type GrafanaSpec
- type GrafanaStatus
- type IngressNetworkingV1
- type JsonnetConfig
- type JsonnetProjectBuild
- type Matcher
- type Matchers
- type NamespacedResource
- type NamespacedResourceList
- func (in NamespacedResourceList) Add(namespace string, name string, uid string) NamespacedResourceList
- func (in NamespacedResourceList) DeepCopy() NamespacedResourceList
- func (in NamespacedResourceList) DeepCopyInto(out *NamespacedResourceList)
- func (in NamespacedResourceList) Find(namespace string, name string) (bool, *string)
- func (in NamespacedResourceList) ForNamespace(namespace string) NamespacedResourceList
- func (in NamespacedResourceList) Remove(namespace string, name string) NamespacedResourceList
- type NotificationSettings
- type ObjectMeta
- type OperatorReconcileVars
- type OperatorStageName
- type OperatorStageStatus
- type PersistentVolumeClaimV1
- type PersistentVolumeClaimV1Spec
- type PluginList
- func (in PluginList) DeepCopy() PluginList
- func (in PluginList) DeepCopyInto(out *PluginList)
- func (l PluginList) GetInstalledVersionOf(plugin *GrafanaPlugin) *GrafanaPlugin
- func (l PluginList) HasExactVersionOf(plugin *GrafanaPlugin) bool
- func (l PluginList) HasNewerVersionOf(plugin *GrafanaPlugin) (bool, error)
- func (l PluginList) HasSomeVersionOf(plugin *GrafanaPlugin) bool
- func (l PluginList) Hash() string
- func (l PluginList) Sanitize() PluginList
- func (l PluginList) String() string
- func (l PluginList) Update(plugin *GrafanaPlugin)
- func (l PluginList) VersionsOf(plugin *GrafanaPlugin) int
- type PluginMap
- type Route
- type RouteOpenShiftV1Spec
- type RouteOpenshiftV1
- type ServiceAccountV1
- type ServiceV1
- type TLSConfig
- type ValueFrom
- type ValueFromSource
Constants ¶
This section is empty.
Variables ¶
var ( // GroupVersion is group version used to register these objects GroupVersion = schema.GroupVersion{Group: "grafana.integreatly.org", Version: "v1beta1"} // 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 ¶
func Merge ¶
func Merge(base, overrides interface{}) error
Merge merges `overrides` into `base` using the SMP (structural merge patch) approach. - It intentionally does not remove fields present in base but missing from overrides - It merges slices only if the `patchStrategy:"merge"` tag is present and the `patchMergeKey` identifies the unique field
Types ¶
type AlertQuery ¶ added in v5.7.0
type AlertQuery struct { // Grafana data source unique identifier; it should be '__expr__' for a Server Side Expression operation. DatasourceUID string `json:"datasourceUid,omitempty"` // JSON is the raw JSON query and includes the above properties as well as custom properties. Model *apiextensions.JSON `json:"model,omitempty"` // QueryType is an optional identifier for the type of query. // It can be used to distinguish different types of queries. QueryType string `json:"queryType,omitempty"` // RefID is the unique identifier of the query, set by the frontend call. RefID string `json:"refId,omitempty"` // relative time range RelativeTimeRange *models.RelativeTimeRange `json:"relativeTimeRange,omitempty"` }
func (*AlertQuery) DeepCopy ¶ added in v5.7.0
func (in *AlertQuery) DeepCopy() *AlertQuery
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AlertQuery.
func (*AlertQuery) DeepCopyInto ¶ added in v5.7.0
func (in *AlertQuery) DeepCopyInto(out *AlertQuery)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AlertRule ¶ added in v5.7.0
type AlertRule struct { Annotations map[string]string `json:"annotations,omitempty"` Condition string `json:"condition"` // +kubebuilder:validation:Required Data []*AlertQuery `json:"data"` // +kubebuilder:validation:Enum=OK;Alerting;Error;KeepLast ExecErrState string `json:"execErrState"` // +kubebuilder:validation:Type=string // +kubebuilder:validation:Format=duration // +kubebuilder:validation:Pattern="^([0-9]+(\\.[0-9]+)?(ns|us|µs|ms|s|m|h))+$" // +kubebuilder:validation:Required For *metav1.Duration `json:"for"` IsPaused bool `json:"isPaused,omitempty"` NotificationSettings *NotificationSettings `json:"notificationSettings,omitempty"` Labels map[string]string `json:"labels,omitempty"` // +kubebuilder:validation:Enum=Alerting;NoData;OK;KeepLast NoDataState *string `json:"noDataState"` // +kubebuilder:validation:MinLength=1 // +kubebuilder:validation:MaxLength=190 // +kubebuilder:example="Always firing" Title string `json:"title"` // +kubebuilder:validation:Pattern="^[a-zA-Z0-9-_]+$" UID string `json:"uid"` }
AlertRule defines a specific rule to be evaluated. It is based on the upstream model with some k8s specific type mappings
func (*AlertRule) DeepCopy ¶ added in v5.7.0
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AlertRule.
func (*AlertRule) DeepCopyInto ¶ added in v5.7.0
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CommonResource ¶ added in v5.16.0
type CommonResource interface { MatchLabels() *metav1.LabelSelector MatchNamespace() string AllowCrossNamespace() bool }
Common Functions that all CRs should implement, excluding Grafana +kubebuilder:object:generate=false
type DashboardSourceType ¶
type DashboardSourceType string
const ( DashboardSourceTypeRawJson DashboardSourceType = "json" DashboardSourceTypeGzipJson DashboardSourceType = "gzipJson" DashboardSourceJsonnetProject DashboardSourceType = "jsonnetProjectWithRuntimeRaw" DashboardSourceTypeUrl DashboardSourceType = "url" DashboardSourceTypeJsonnet DashboardSourceType = "jsonnet" DashboardSourceTypeGrafanaCom DashboardSourceType = "grafana" DashboardSourceConfigMap DashboardSourceType = "configmap" )
type DeploymentV1 ¶
type DeploymentV1 struct { ObjectMeta ObjectMeta `json:"metadata,omitempty"` Spec DeploymentV1Spec `json:"spec,omitempty"` }
func (*DeploymentV1) DeepCopy ¶
func (in *DeploymentV1) DeepCopy() *DeploymentV1
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DeploymentV1.
func (*DeploymentV1) DeepCopyInto ¶
func (in *DeploymentV1) DeepCopyInto(out *DeploymentV1)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DeploymentV1PodSpec ¶
type DeploymentV1PodSpec struct { // +optional // +patchMergeKey=name // +patchStrategy=merge,retainKeys Volumes []v14.Volume `json:"volumes,omitempty" patchStrategy:"merge,retainKeys" patchMergeKey:"name" protobuf:"bytes,1,rep,name=volumes"` // +patchMergeKey=name // +patchStrategy=merge // +optional InitContainers []v14.Container `json:"initContainers,omitempty" patchStrategy:"merge" patchMergeKey:"name" protobuf:"bytes,20,rep,name=initContainers"` // +patchMergeKey=name // +patchStrategy=merge // +optional Containers []v14.Container `json:"containers,omitempty" patchStrategy:"merge" patchMergeKey:"name" protobuf:"bytes,2,rep,name=containers"` // +optional // +patchMergeKey=name // +patchStrategy=merge EphemeralContainers []v14.EphemeralContainer `` /* 128-byte string literal not displayed */ // +optional RestartPolicy v14.RestartPolicy `json:"restartPolicy,omitempty" protobuf:"bytes,3,opt,name=restartPolicy,casttype=RestartPolicy"` // +optional TerminationGracePeriodSeconds *int64 `json:"terminationGracePeriodSeconds,omitempty" protobuf:"varint,4,opt,name=terminationGracePeriodSeconds"` // +optional ActiveDeadlineSeconds *int64 `json:"activeDeadlineSeconds,omitempty" protobuf:"varint,5,opt,name=activeDeadlineSeconds"` // +optional DNSPolicy v14.DNSPolicy `json:"dnsPolicy,omitempty" protobuf:"bytes,6,opt,name=dnsPolicy,casttype=DNSPolicy"` // NodeSelector is a selector which must be true for the pod to fit on a node. // Selector which must match a node's labels for the pod to be scheduled on that node. // More info: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/ // +optional // +mapType=atomic NodeSelector map[string]string `json:"nodeSelector,omitempty" protobuf:"bytes,7,rep,name=nodeSelector"` // ServiceAccountName is the name of the ServiceAccount to use to run this pod. // More info: https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/ // +optional ServiceAccountName string `json:"serviceAccountName,omitempty" protobuf:"bytes,8,opt,name=serviceAccountName"` // DeprecatedServiceAccount is a depreciated alias for ServiceAccountName. // Deprecated: Use serviceAccountName instead. // +k8s:conversion-gen=false // +optional DeprecatedServiceAccount string `json:"serviceAccount,omitempty" protobuf:"bytes,9,opt,name=serviceAccount"` // AutomountServiceAccountToken indicates whether a service account token should be automatically mounted. // +optional AutomountServiceAccountToken *bool `json:"automountServiceAccountToken,omitempty" protobuf:"varint,21,opt,name=automountServiceAccountToken"` // NodeName is a request to schedule this pod onto a specific node. If it is non-empty, // the scheduler simply schedules this pod onto that node, assuming that it fits resource // requirements. // +optional NodeName string `json:"nodeName,omitempty" protobuf:"bytes,10,opt,name=nodeName"` // Host networking requested for this pod. Use the host's network namespace. // If this option is set, the ports that will be used must be specified. // Default to false. // +k8s:conversion-gen=false // +optional HostNetwork bool `json:"hostNetwork,omitempty" protobuf:"varint,11,opt,name=hostNetwork"` // Use the host's pid namespace. // Optional: Default to false. // +k8s:conversion-gen=false // +optional HostPID bool `json:"hostPID,omitempty" protobuf:"varint,12,opt,name=hostPID"` // Use the host's ipc namespace. // Optional: Default to false. // +k8s:conversion-gen=false // +optional HostIPC bool `json:"hostIPC,omitempty" protobuf:"varint,13,opt,name=hostIPC"` // When this is set containers will be able to view and signal processes from other containers // in the same pod, and the first process in each container will not be assigned PID 1. // HostPID and ShareProcessNamespace cannot both be set. // Optional: Default to false. // +k8s:conversion-gen=false // +optional ShareProcessNamespace *bool `json:"shareProcessNamespace,omitempty" protobuf:"varint,27,opt,name=shareProcessNamespace"` // SecurityContext holds pod-level security attributes and common container settings. // Optional: Defaults to empty. See type description for default values of each field. // +optional SecurityContext *v14.PodSecurityContext `json:"securityContext,omitempty" protobuf:"bytes,14,opt,name=securityContext"` // ImagePullSecrets is an optional list of references to secrets in the same namespace to use for pulling any of the images used by this PodSpec. // If specified, these secrets will be passed to individual puller implementations for them to use. // More info: https://kubernetes.io/docs/concepts/containers/images#specifying-imagepullsecrets-on-a-pod // +optional // +patchMergeKey=name // +patchStrategy=merge ImagePullSecrets []v14.LocalObjectReference `json:"imagePullSecrets,omitempty" patchStrategy:"merge" patchMergeKey:"name" protobuf:"bytes,15,rep,name=imagePullSecrets"` // Specifies the hostname of the Pod // If not specified, the pod's hostname will be set to a system-defined value. // +optional Hostname string `json:"hostname,omitempty" protobuf:"bytes,16,opt,name=hostname"` // If specified, the fully qualified Pod hostname will be "<hostname>.<subdomain>.<pod namespace>.svc.<cluster domain>". // If not specified, the pod will not have a domainname at all. // +optional Subdomain string `json:"subdomain,omitempty" protobuf:"bytes,17,opt,name=subdomain"` // If specified, the pod's scheduling constraints // +optional Affinity *v14.Affinity `json:"affinity,omitempty" protobuf:"bytes,18,opt,name=affinity"` // If specified, the pod will be dispatched by specified scheduler. // If not specified, the pod will be dispatched by default scheduler. // +optional SchedulerName string `json:"schedulerName,omitempty" protobuf:"bytes,19,opt,name=schedulerName"` // If specified, the pod's tolerations. // +optional Tolerations []v14.Toleration `json:"tolerations,omitempty" protobuf:"bytes,22,opt,name=tolerations"` // HostAliases is an optional list of hosts and IPs that will be injected into the pod's hosts // file if specified. This is only valid for non-hostNetwork pods. // +optional // +patchMergeKey=ip // +patchStrategy=merge HostAliases []v14.HostAlias `json:"hostAliases,omitempty" patchStrategy:"merge" patchMergeKey:"ip" protobuf:"bytes,23,rep,name=hostAliases"` // If specified, indicates the pod's priority. "system-node-critical" and // "system-cluster-critical" are two special keywords which indicate the // highest priorities with the former being the highest priority. Any other // name must be defined by creating a PriorityClass object with that name. // If not specified, the pod priority will be default or zero if there is no // default. // +optional PriorityClassName string `json:"priorityClassName,omitempty" protobuf:"bytes,24,opt,name=priorityClassName"` // The priority value. Various system components use this field to find the // priority of the pod. When Priority Admission Controller is enabled, it // prevents users from setting this field. The admission controller populates // this field from PriorityClassName. // The higher the value, the higher the priority. // +optional Priority *int32 `json:"priority,omitempty" protobuf:"bytes,25,opt,name=priority"` // Specifies the DNS parameters of a pod. // Parameters specified here will be merged to the generated DNS // configuration based on DNSPolicy. // +optional DNSConfig *v14.PodDNSConfig `json:"dnsConfig,omitempty" protobuf:"bytes,26,opt,name=dnsConfig"` // If specified, all readiness gates will be evaluated for pod readiness. // A pod is ready when all its containers are ready AND // all conditions specified in the readiness gates have status equal to "True" // More info: https://git.k8s.io/enhancements/keps/sig-network/580-pod-readiness-gates // +optional ReadinessGates []v14.PodReadinessGate `json:"readinessGates,omitempty" protobuf:"bytes,28,opt,name=readinessGates"` // RuntimeClassName refers to a RuntimeClass object in the node.k8s.io group, which should be used // to run this pod. If no RuntimeClass resource matches the named class, the pod will not be run. // If unset or empty, the "legacy" RuntimeClass will be used, which is an implicit class with an // empty definition that uses the default runtime handler. // More info: https://git.k8s.io/enhancements/keps/sig-node/585-runtime-class // +optional RuntimeClassName *string `json:"runtimeClassName,omitempty" protobuf:"bytes,29,opt,name=runtimeClassName"` // EnableServiceLinks indicates whether information about services should be injected into pod's // environment variables, matching the syntax of Docker links. // Optional: Defaults to true. // +optional EnableServiceLinks *bool `json:"enableServiceLinks,omitempty" protobuf:"varint,30,opt,name=enableServiceLinks"` // PreemptionPolicy is the Policy for preempting pods with lower priority. // One of Never, PreemptLowerPriority. // Defaults to PreemptLowerPriority if unset. // +optional PreemptionPolicy *v14.PreemptionPolicy `json:"preemptionPolicy,omitempty" protobuf:"bytes,31,opt,name=preemptionPolicy"` // Overhead represents the resource overhead associated with running a pod for a given RuntimeClass. // This field will be autopopulated at admission time by the RuntimeClass admission controller. If // the RuntimeClass admission controller is enabled, overhead must not be set in Pod create requests. // The RuntimeClass admission controller will reject Pod create requests which have the overhead already // set. If RuntimeClass is configured and selected in the PodSpec, Overhead will be set to the value // defined in the corresponding RuntimeClass, otherwise it will remain unset and treated as zero. // More info: https://git.k8s.io/enhancements/keps/sig-node/688-pod-overhead/README.md // +optional Overhead v14.ResourceList `json:"overhead,omitempty" protobuf:"bytes,32,opt,name=overhead"` // TopologySpreadConstraints describes how a group of pods ought to spread across topology // domains. Scheduler will schedule pods in a way which abides by the constraints. // All topologySpreadConstraints are ANDed. // +optional // +patchMergeKey=topologyKey // +patchStrategy=merge // +listType=map // +listMapKey=topologyKey // +listMapKey=whenUnsatisfiable TopologySpreadConstraints []v14.TopologySpreadConstraint `` /* 147-byte string literal not displayed */ // If true the pod's hostname will be configured as the pod's FQDN, rather than the leaf name (the default). // In Linux containers, this means setting the FQDN in the hostname field of the kernel (the nodename field of struct utsname). // In Windows containers, this means setting the registry value of hostname for the registry key HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Services\\Tcpip\\Parameters to FQDN. // If a pod does not have FQDN, this has no effect. // Default to false. // +optional SetHostnameAsFQDN *bool `json:"setHostnameAsFQDN,omitempty" protobuf:"varint,35,opt,name=setHostnameAsFQDN"` // Specifies the OS of the containers in the pod. // Some pod and container fields are restricted if this is set. // // If the OS field is set to linux, the following fields must be unset: // -securityContext.windowsOptions // // If the OS field is set to windows, following fields must be unset: // - spec.hostPID // - spec.hostIPC // - spec.hostUsers // - spec.securityContext.seLinuxOptions // - spec.securityContext.seccompProfile // - spec.securityContext.fsGroup // - spec.securityContext.fsGroupChangePolicy // - spec.securityContext.sysctls // - spec.shareProcessNamespace // - spec.securityContext.runAsUser // - spec.securityContext.runAsGroup // - spec.securityContext.supplementalGroups // - spec.containers[*].securityContext.seLinuxOptions // - spec.containers[*].securityContext.seccompProfile // - spec.containers[*].securityContext.capabilities // - spec.containers[*].securityContext.readOnlyRootFilesystem // - spec.containers[*].securityContext.privileged // - spec.containers[*].securityContext.allowPrivilegeEscalation // - spec.containers[*].securityContext.procMount // - spec.containers[*].securityContext.runAsUser // - spec.containers[*].securityContext.runAsGroup // +optional OS *v14.PodOS `json:"os,omitempty" protobuf:"bytes,36,opt,name=os"` // Use the host's user namespace. // Optional: Default to true. // If set to true or not present, the pod will be run in the host user namespace, useful // for when the pod needs a feature only available to the host user namespace, such as // loading a kernel module with CAP_SYS_MODULE. // When set to false, a new userns is created for the pod. Setting false is useful for // mitigating container breakout vulnerabilities even allowing users to run their // containers as root without actually having root privileges on the host. // This field is alpha-level and is only honored by servers that enable the UserNamespacesSupport feature. // +k8s:conversion-gen=false // +optional HostUsers *bool `json:"hostUsers,omitempty" protobuf:"bytes,37,opt,name=hostUsers"` }
func (*DeploymentV1PodSpec) DeepCopy ¶
func (in *DeploymentV1PodSpec) DeepCopy() *DeploymentV1PodSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DeploymentV1PodSpec.
func (*DeploymentV1PodSpec) DeepCopyInto ¶
func (in *DeploymentV1PodSpec) DeepCopyInto(out *DeploymentV1PodSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DeploymentV1PodTemplateSpec ¶
type DeploymentV1PodTemplateSpec struct { // Standard object's metadata. // More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata // +optional ObjectMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` // Specification of the desired behavior of the pod. // More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status // +optional Spec *DeploymentV1PodSpec `json:"spec,omitempty" protobuf:"bytes,2,opt,name=spec"` }
func (*DeploymentV1PodTemplateSpec) DeepCopy ¶
func (in *DeploymentV1PodTemplateSpec) DeepCopy() *DeploymentV1PodTemplateSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DeploymentV1PodTemplateSpec.
func (*DeploymentV1PodTemplateSpec) DeepCopyInto ¶
func (in *DeploymentV1PodTemplateSpec) DeepCopyInto(out *DeploymentV1PodTemplateSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DeploymentV1Spec ¶
type DeploymentV1Spec struct { // +optional Replicas *int32 `json:"replicas,omitempty" protobuf:"varint,1,opt,name=replicas"` Selector *metav1.LabelSelector `json:"selector,omitempty" protobuf:"bytes,2,opt,name=selector"` Template *DeploymentV1PodTemplateSpec `json:"template,omitempty" protobuf:"bytes,3,opt,name=template"` // +optional // +patchStrategy=retainKeys Strategy *v13.DeploymentStrategy `json:"strategy,omitempty" patchStrategy:"retainKeys" protobuf:"bytes,4,opt,name=strategy"` // +optional MinReadySeconds int32 `json:"minReadySeconds,omitempty" protobuf:"varint,5,opt,name=minReadySeconds"` // +optional RevisionHistoryLimit *int32 `json:"revisionHistoryLimit,omitempty" protobuf:"varint,6,opt,name=revisionHistoryLimit"` // +optional Paused bool `json:"paused,omitempty" protobuf:"varint,7,opt,name=paused"` ProgressDeadlineSeconds *int32 `json:"progressDeadlineSeconds,omitempty" protobuf:"varint,9,opt,name=progressDeadlineSeconds"` }
func (*DeploymentV1Spec) DeepCopy ¶
func (in *DeploymentV1Spec) DeepCopy() *DeploymentV1Spec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DeploymentV1Spec.
func (*DeploymentV1Spec) DeepCopyInto ¶
func (in *DeploymentV1Spec) DeepCopyInto(out *DeploymentV1Spec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type External ¶
type External struct { // URL of the external grafana instance you want to manage. URL string `json:"url"` // The API key to talk to the external grafana instance, you need to define ether apiKey or adminUser/adminPassword. ApiKey *v1.SecretKeySelector `json:"apiKey,omitempty"` // AdminUser key to talk to the external grafana instance. AdminUser *v1.SecretKeySelector `json:"adminUser,omitempty"` // AdminPassword key to talk to the external grafana instance. AdminPassword *v1.SecretKeySelector `json:"adminPassword,omitempty"` // DEPRECATED, use top level `tls` instead. // +optional TLS *TLSConfig `json:"tls,omitempty"` }
func (*External) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new External.
func (*External) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Grafana ¶
type Grafana struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec GrafanaSpec `json:"spec,omitempty"` Status GrafanaStatus `json:"status,omitempty"` }
Grafana is the Schema for the grafanas API +kubebuilder:printcolumn:name="Version",type="string",JSONPath=".status.version",description="" +kubebuilder:printcolumn:name="Stage",type="string",JSONPath=".status.stage",description="" +kubebuilder:printcolumn:name="Stage status",type="string",JSONPath=".status.stageStatus",description="" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp",description="" +kubebuilder:resource:categories={grafana-operator}
func (*Grafana) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Grafana.
func (*Grafana) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Grafana) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*Grafana) IsExternal ¶
func (*Grafana) IsInternal ¶
func (*Grafana) PreferIngress ¶
type GrafanaAlertRuleGroup ¶ added in v5.7.0
type GrafanaAlertRuleGroup struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec GrafanaAlertRuleGroupSpec `json:"spec,omitempty"` Status GrafanaCommonStatus `json:"status,omitempty"` }
GrafanaAlertRuleGroup is the Schema for the grafanaalertrulegroups API +kubebuilder:resource:categories={grafana-operator}
func (*GrafanaAlertRuleGroup) Conditions ¶ added in v5.11.0
func (in *GrafanaAlertRuleGroup) Conditions() *[]metav1.Condition
Conditions implements FolderReferencer.
func (*GrafanaAlertRuleGroup) CurrentGeneration ¶ added in v5.11.0
func (in *GrafanaAlertRuleGroup) CurrentGeneration() int64
CurrentGeneration implements FolderReferencer.
func (*GrafanaAlertRuleGroup) DeepCopy ¶ added in v5.7.0
func (in *GrafanaAlertRuleGroup) DeepCopy() *GrafanaAlertRuleGroup
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GrafanaAlertRuleGroup.
func (*GrafanaAlertRuleGroup) DeepCopyInto ¶ added in v5.7.0
func (in *GrafanaAlertRuleGroup) DeepCopyInto(out *GrafanaAlertRuleGroup)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*GrafanaAlertRuleGroup) DeepCopyObject ¶ added in v5.7.0
func (in *GrafanaAlertRuleGroup) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*GrafanaAlertRuleGroup) FolderNamespace ¶ added in v5.11.0
func (in *GrafanaAlertRuleGroup) FolderNamespace() string
FolderNamespace implements FolderReferencer.
func (*GrafanaAlertRuleGroup) FolderRef ¶ added in v5.11.0
func (in *GrafanaAlertRuleGroup) FolderRef() string
FolderRef implements FolderReferencer.
func (*GrafanaAlertRuleGroup) FolderUID ¶ added in v5.11.0
func (in *GrafanaAlertRuleGroup) FolderUID() string
FolderUID implements FolderReferencer.
func (*GrafanaAlertRuleGroup) GroupName ¶ added in v5.15.0
func (in *GrafanaAlertRuleGroup) GroupName() string
GroupName returns the name of alert rule group.
type GrafanaAlertRuleGroupList ¶ added in v5.7.0
type GrafanaAlertRuleGroupList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []GrafanaAlertRuleGroup `json:"items"` }
GrafanaAlertRuleGroupList contains a list of GrafanaAlertRuleGroup
func (*GrafanaAlertRuleGroupList) DeepCopy ¶ added in v5.7.0
func (in *GrafanaAlertRuleGroupList) DeepCopy() *GrafanaAlertRuleGroupList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GrafanaAlertRuleGroupList.
func (*GrafanaAlertRuleGroupList) DeepCopyInto ¶ added in v5.7.0
func (in *GrafanaAlertRuleGroupList) DeepCopyInto(out *GrafanaAlertRuleGroupList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*GrafanaAlertRuleGroupList) DeepCopyObject ¶ added in v5.7.0
func (in *GrafanaAlertRuleGroupList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type GrafanaAlertRuleGroupSpec ¶ added in v5.7.0
type GrafanaAlertRuleGroupSpec struct { GrafanaCommonSpec `json:",inline"` // +optional // Name of the alert rule group. If not specified, the resource name will be used. Name string `json:"name,omitempty"` // UID of the folder containing this rule group // Overrides the FolderSelector FolderUID string `json:"folderUID,omitempty"` // Match GrafanaFolders CRs to infer the uid FolderRef string `json:"folderRef,omitempty"` Rules []AlertRule `json:"rules"` // +kubebuilder:validation:Type=string // +kubebuilder:validation:Format=duration // +kubebuilder:validation:Pattern="^([0-9]+(\\.[0-9]+)?(ns|us|µs|ms|s|m|h))+$" // +kubebuilder:validation:Required Interval metav1.Duration `json:"interval"` // Whether to enable or disable editing of the alert rule group in Grafana UI // +kubebuilder:validation:XValidation:rule="self == oldSelf",message="Value is immutable" // +optional Editable *bool `json:"editable,omitempty"` }
GrafanaAlertRuleGroupSpec defines the desired state of GrafanaAlertRuleGroup +kubebuilder:validation:XValidation:rule="(has(self.folderUID) && !(has(self.folderRef))) || (has(self.folderRef) && !(has(self.folderUID)))", message="Only one of FolderUID or FolderRef can be set" +kubebuilder:validation:XValidation:rule="((!has(oldSelf.editable) && !has(self.editable)) || (has(oldSelf.editable) && has(self.editable)))", message="spec.editable is immutable"
func (*GrafanaAlertRuleGroupSpec) DeepCopy ¶ added in v5.7.0
func (in *GrafanaAlertRuleGroupSpec) DeepCopy() *GrafanaAlertRuleGroupSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GrafanaAlertRuleGroupSpec.
func (*GrafanaAlertRuleGroupSpec) DeepCopyInto ¶ added in v5.7.0
func (in *GrafanaAlertRuleGroupSpec) DeepCopyInto(out *GrafanaAlertRuleGroupSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GrafanaClient ¶
type GrafanaClient struct { // +nullable TimeoutSeconds *int `json:"timeout,omitempty"` // +nullable // If the operator should send it's request through the grafana instances ingress object instead of through the service. PreferIngress *bool `json:"preferIngress,omitempty"` // TLS Configuration used to talk with the grafana instance. // +optional TLS *TLSConfig `json:"tls,omitempty"` // Custom HTTP headers to use when interacting with this Grafana. // +optional Headers map[string]string `json:"headers,omitempty"` }
GrafanaClient contains the Grafana API client settings
func (*GrafanaClient) DeepCopy ¶
func (in *GrafanaClient) DeepCopy() *GrafanaClient
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GrafanaClient.
func (*GrafanaClient) DeepCopyInto ¶
func (in *GrafanaClient) DeepCopyInto(out *GrafanaClient)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GrafanaComDashboardReference ¶
type GrafanaComDashboardReference struct { Id int `json:"id"` Revision *int `json:"revision,omitempty"` }
GrafanaComDashbooardReference is a reference to a dashboard on grafana.com/dashboards
func (*GrafanaComDashboardReference) DeepCopy ¶
func (in *GrafanaComDashboardReference) DeepCopy() *GrafanaComDashboardReference
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GrafanaComDashboardReference.
func (*GrafanaComDashboardReference) DeepCopyInto ¶
func (in *GrafanaComDashboardReference) DeepCopyInto(out *GrafanaComDashboardReference)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GrafanaCommonSpec ¶ added in v5.16.0
type GrafanaCommonSpec struct { // How often the resource is synced, defaults to 10m0s if not set // +optional // +kubebuilder:validation:Type=string // +kubebuilder:validation:Format=duration // +kubebuilder:validation:Pattern="^([0-9]+(\\.[0-9]+)?(ns|us|µs|ms|s|m|h))+$" // +kubebuilder:default="10m0s" ResyncPeriod metav1.Duration `json:"resyncPeriod,omitempty"` // Selects Grafana instances for import // +kubebuilder:validation:XValidation:rule="self == oldSelf",message="spec.instanceSelector is immutable" InstanceSelector *metav1.LabelSelector `json:"instanceSelector"` // Allow the Operator to match this resource with Grafanas outside the current namespace // +optional // +kubebuilder:default=false AllowCrossNamespaceImport bool `json:"allowCrossNamespaceImport,omitempty"` }
Common Options that all CRs should embed, excluding GrafanaSpec Ensure alignment on handling ResyncPeriod, InstanceSelector, and AllowCrossNamespaceImport +kubebuilder:validation:XValidation:rule="!oldSelf.allowCrossNamespaceImport || (oldSelf.allowCrossNamespaceImport && self.allowCrossNamespaceImport)", message="disabling spec.allowCrossNamespaceImport requires a recreate to ensure desired state"
func (*GrafanaCommonSpec) DeepCopy ¶ added in v5.16.0
func (in *GrafanaCommonSpec) DeepCopy() *GrafanaCommonSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GrafanaCommonSpec.
func (*GrafanaCommonSpec) DeepCopyInto ¶ added in v5.16.0
func (in *GrafanaCommonSpec) DeepCopyInto(out *GrafanaCommonSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GrafanaCommonStatus ¶ added in v5.16.0
type GrafanaCommonStatus struct { // Results when synchonizing resource with Grafana instances Conditions []metav1.Condition `json:"conditions,omitempty"` // Last time the resource was synchronized with Grafana instances LastResync metav1.Time `json:"lastResync,omitempty"` }
The most recent observed state of a Grafana resource
func (*GrafanaCommonStatus) DeepCopy ¶ added in v5.16.0
func (in *GrafanaCommonStatus) DeepCopy() *GrafanaCommonStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GrafanaCommonStatus.
func (*GrafanaCommonStatus) DeepCopyInto ¶ added in v5.16.0
func (in *GrafanaCommonStatus) DeepCopyInto(out *GrafanaCommonStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GrafanaContactPoint ¶ added in v5.9.0
type GrafanaContactPoint struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec GrafanaContactPointSpec `json:"spec,omitempty"` Status GrafanaCommonStatus `json:"status,omitempty"` }
GrafanaContactPoint is the Schema for the grafanacontactpoints API +kubebuilder:printcolumn:name="Last resync",type="date",format="date-time",JSONPath=".status.lastResync",description="" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp",description="" +kubebuilder:resource:categories={grafana-operator}
func (*GrafanaContactPoint) AllowCrossNamespace ¶ added in v5.16.0
func (in *GrafanaContactPoint) AllowCrossNamespace() bool
func (*GrafanaContactPoint) CustomUIDOrUID ¶ added in v5.16.0
func (in *GrafanaContactPoint) CustomUIDOrUID() string
Wrapper around CustomUID or default metadata.uid
func (*GrafanaContactPoint) DeepCopy ¶ added in v5.9.0
func (in *GrafanaContactPoint) DeepCopy() *GrafanaContactPoint
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GrafanaContactPoint.
func (*GrafanaContactPoint) DeepCopyInto ¶ added in v5.9.0
func (in *GrafanaContactPoint) DeepCopyInto(out *GrafanaContactPoint)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*GrafanaContactPoint) DeepCopyObject ¶ added in v5.9.0
func (in *GrafanaContactPoint) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*GrafanaContactPoint) MatchLabels ¶ added in v5.16.0
func (in *GrafanaContactPoint) MatchLabels() *metav1.LabelSelector
func (*GrafanaContactPoint) MatchNamespace ¶ added in v5.16.0
func (in *GrafanaContactPoint) MatchNamespace() string
type GrafanaContactPointList ¶ added in v5.9.0
type GrafanaContactPointList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []GrafanaContactPoint `json:"items"` }
GrafanaContactPointList contains a list of GrafanaContactPoint
func (*GrafanaContactPointList) DeepCopy ¶ added in v5.9.0
func (in *GrafanaContactPointList) DeepCopy() *GrafanaContactPointList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GrafanaContactPointList.
func (*GrafanaContactPointList) DeepCopyInto ¶ added in v5.9.0
func (in *GrafanaContactPointList) DeepCopyInto(out *GrafanaContactPointList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*GrafanaContactPointList) DeepCopyObject ¶ added in v5.9.0
func (in *GrafanaContactPointList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type GrafanaContactPointSpec ¶ added in v5.9.0
type GrafanaContactPointSpec struct { GrafanaCommonSpec `json:",inline"` // Manually specify the UID the Contact Point is created with // +optional // +kubebuilder:validation:XValidation:rule="self == oldSelf",message="spec.uid is immutable" CustomUID string `json:"uid,omitempty"` // +optional DisableResolveMessage bool `json:"disableResolveMessage,omitempty"` // +kubebuilder:validation:type=string Name string `json:"name"` Settings *apiextensions.JSON `json:"settings"` // +kubebuilder:validation:MaxItems=99 ValuesFrom []ValueFrom `json:"valuesFrom,omitempty"` // +kubebuilder:validation:Enum=alertmanager;prometheus-alertmanager;dingding;discord;email;googlechat;kafka;line;opsgenie;pagerduty;pushover;sensugo;sensu;slack;teams;telegram;threema;victorops;webex;webhook;wecom;hipchat;oncall Type string `json:"type,omitempty"` }
GrafanaContactPointSpec defines the desired state of GrafanaContactPoint +kubebuilder:validation:XValidation:rule="((!has(oldSelf.uid) && !has(self.uid)) || (has(oldSelf.uid) && has(self.uid)))", message="spec.uid is immutable"
func (*GrafanaContactPointSpec) DeepCopy ¶ added in v5.9.0
func (in *GrafanaContactPointSpec) DeepCopy() *GrafanaContactPointSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GrafanaContactPointSpec.
func (*GrafanaContactPointSpec) DeepCopyInto ¶ added in v5.9.0
func (in *GrafanaContactPointSpec) DeepCopyInto(out *GrafanaContactPointSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GrafanaDashboard ¶
type GrafanaDashboard struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec GrafanaDashboardSpec `json:"spec,omitempty"` Status GrafanaDashboardStatus `json:"status,omitempty"` }
GrafanaDashboard is the Schema for the grafanadashboards API +kubebuilder:printcolumn:name="No matching instances",type="boolean",JSONPath=".status.NoMatchingInstances",description="" +kubebuilder:printcolumn:name="Last resync",type="date",format="date-time",JSONPath=".status.lastResync",description="" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp",description="" +kubebuilder:resource:categories={grafana-operator}
func (*GrafanaDashboard) Conditions ¶ added in v5.11.0
func (in *GrafanaDashboard) Conditions() *[]metav1.Condition
Conditions implements FolderReferencer.
func (*GrafanaDashboard) CurrentGeneration ¶ added in v5.11.0
func (in *GrafanaDashboard) CurrentGeneration() int64
CurrentGeneration implements FolderReferencer.
func (*GrafanaDashboard) CustomUIDOrUID ¶ added in v5.15.0
func (in *GrafanaDashboard) CustomUIDOrUID(dashboardUID string) string
Wrapper around CustomUID, dashboardModelUID or default metadata.uid
func (*GrafanaDashboard) DeepCopy ¶
func (in *GrafanaDashboard) DeepCopy() *GrafanaDashboard
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GrafanaDashboard.
func (*GrafanaDashboard) DeepCopyInto ¶
func (in *GrafanaDashboard) DeepCopyInto(out *GrafanaDashboard)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*GrafanaDashboard) DeepCopyObject ¶
func (in *GrafanaDashboard) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*GrafanaDashboard) FolderNamespace ¶ added in v5.11.0
func (in *GrafanaDashboard) FolderNamespace() string
FolderNamespace implements FolderReferencer.
func (*GrafanaDashboard) FolderRef ¶ added in v5.11.0
func (in *GrafanaDashboard) FolderRef() string
FolderRef implements FolderReferencer.
func (*GrafanaDashboard) FolderUID ¶ added in v5.11.0
func (in *GrafanaDashboard) FolderUID() string
FolderUID implements FolderReferencer.
func (*GrafanaDashboard) GetContentCache ¶
func (in *GrafanaDashboard) GetContentCache() []byte
func (*GrafanaDashboard) GetSourceTypes ¶
func (in *GrafanaDashboard) GetSourceTypes() []DashboardSourceType
func (*GrafanaDashboard) IsAllowCrossNamespaceImport ¶
func (in *GrafanaDashboard) IsAllowCrossNamespaceImport() bool
func (*GrafanaDashboard) IsUpdatedUID ¶
func (in *GrafanaDashboard) IsUpdatedUID(uid string) bool
func (*GrafanaDashboard) ResyncPeriodHasElapsed ¶
func (in *GrafanaDashboard) ResyncPeriodHasElapsed() bool
func (*GrafanaDashboard) Unchanged ¶
func (in *GrafanaDashboard) Unchanged(hash string) bool
type GrafanaDashboardDatasource ¶
type GrafanaDashboardDatasource struct { InputName string `json:"inputName"` DatasourceName string `json:"datasourceName"` }
func (*GrafanaDashboardDatasource) DeepCopy ¶
func (in *GrafanaDashboardDatasource) DeepCopy() *GrafanaDashboardDatasource
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GrafanaDashboardDatasource.
func (*GrafanaDashboardDatasource) DeepCopyInto ¶
func (in *GrafanaDashboardDatasource) DeepCopyInto(out *GrafanaDashboardDatasource)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GrafanaDashboardEnv ¶
type GrafanaDashboardEnv struct { Name string `json:"name"` // Inline env value // +optional Value string `json:"value,omitempty"` // Reference on value source, might be the reference on a secret or config map // +optional ValueFrom GrafanaDashboardEnvFromSource `json:"valueFrom,omitempty"` }
func (*GrafanaDashboardEnv) DeepCopy ¶
func (in *GrafanaDashboardEnv) DeepCopy() *GrafanaDashboardEnv
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GrafanaDashboardEnv.
func (*GrafanaDashboardEnv) DeepCopyInto ¶
func (in *GrafanaDashboardEnv) DeepCopyInto(out *GrafanaDashboardEnv)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GrafanaDashboardEnvFromSource ¶
type GrafanaDashboardEnvFromSource struct { // Selects a key of a ConfigMap. // +optional ConfigMapKeyRef *v1.ConfigMapKeySelector `json:"configMapKeyRef,omitempty"` // Selects a key of a Secret. // +optional SecretKeyRef *v1.SecretKeySelector `json:"secretKeyRef,omitempty"` }
func (*GrafanaDashboardEnvFromSource) DeepCopy ¶
func (in *GrafanaDashboardEnvFromSource) DeepCopy() *GrafanaDashboardEnvFromSource
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GrafanaDashboardEnvFromSource.
func (*GrafanaDashboardEnvFromSource) DeepCopyInto ¶
func (in *GrafanaDashboardEnvFromSource) DeepCopyInto(out *GrafanaDashboardEnvFromSource)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GrafanaDashboardList ¶
type GrafanaDashboardList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []GrafanaDashboard `json:"items"` }
GrafanaDashboardList contains a list of GrafanaDashboard
func (*GrafanaDashboardList) DeepCopy ¶
func (in *GrafanaDashboardList) DeepCopy() *GrafanaDashboardList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GrafanaDashboardList.
func (*GrafanaDashboardList) DeepCopyInto ¶
func (in *GrafanaDashboardList) DeepCopyInto(out *GrafanaDashboardList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*GrafanaDashboardList) DeepCopyObject ¶
func (in *GrafanaDashboardList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*GrafanaDashboardList) Find ¶
func (in *GrafanaDashboardList) Find(namespace string, name string) *GrafanaDashboard
type GrafanaDashboardSpec ¶
type GrafanaDashboardSpec struct { GrafanaCommonSpec `json:",inline"` // Manually specify the uid for the dashboard, overwrites uids already present in the json model // +optional // +kubebuilder:validation:XValidation:rule="self == oldSelf",message="spec.uid is immutable" CustomUID string `json:"uid,omitempty"` // dashboard json // +optional Json string `json:"json,omitempty"` // GzipJson the dashboard's JSON compressed with Gzip. Base64-encoded when in YAML. // +optional GzipJson []byte `json:"gzipJson,omitempty"` // dashboard url // +optional Url string `json:"url,omitempty"` // authorization options for dashboard from url // +optional UrlAuthorization *GrafanaDashboardUrlAuthorization `json:"urlAuthorization,omitempty"` // Jsonnet // +optional Jsonnet string `json:"jsonnet,omitempty"` // Jsonnet project build JsonnetProjectBuild *JsonnetProjectBuild `json:"jsonnetLib,omitempty"` // grafana.com/dashboards // +optional GrafanaCom *GrafanaComDashboardReference `json:"grafanaCom,omitempty"` // dashboard from configmap // +optional ConfigMapRef *v1.ConfigMapKeySelector `json:"configMapRef,omitempty"` // folder assignment for dashboard // +optional FolderTitle string `json:"folder,omitempty"` // UID of the target folder for this dashboard // +optional FolderUID string `json:"folderUID,omitempty"` // Name of a `GrafanaFolder` resource in the same namespace // +optional FolderRef string `json:"folderRef,omitempty"` // plugins // +optional Plugins PluginList `json:"plugins,omitempty"` // Cache duration for dashboards fetched from URLs // +optional ContentCacheDuration metav1.Duration `json:"contentCacheDuration,omitempty"` // maps required data sources to existing ones // +optional Datasources []GrafanaDashboardDatasource `json:"datasources,omitempty"` // environments variables as a map // +optional Envs []GrafanaDashboardEnv `json:"envs,omitempty"` // environments variables from secrets or config maps // +optional EnvsFrom []GrafanaDashboardEnvFromSource `json:"envFrom,omitempty"` }
GrafanaDashboardSpec defines the desired state of GrafanaDashboard +kubebuilder:validation:XValidation:rule="(has(self.folderUID) && !(has(self.folderRef))) || (has(self.folderRef) && !(has(self.folderUID))) || !(has(self.folderRef) && (has(self.folderUID)))", message="Only one of folderUID or folderRef can be declared at the same time" +kubebuilder:validation:XValidation:rule="(has(self.folder) && !(has(self.folderRef) || has(self.folderUID))) || !(has(self.folder))", message="folder field cannot be set when folderUID or folderRef is already declared" +kubebuilder:validation:XValidation:rule="((!has(oldSelf.uid) && !has(self.uid)) || (has(oldSelf.uid) && has(self.uid)))", message="spec.uid is immutable"
func (*GrafanaDashboardSpec) DeepCopy ¶
func (in *GrafanaDashboardSpec) DeepCopy() *GrafanaDashboardSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GrafanaDashboardSpec.
func (*GrafanaDashboardSpec) DeepCopyInto ¶
func (in *GrafanaDashboardSpec) DeepCopyInto(out *GrafanaDashboardSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GrafanaDashboardStatus ¶
type GrafanaDashboardStatus struct { GrafanaCommonStatus `json:",inline"` ContentCache []byte `json:"contentCache,omitempty"` ContentTimestamp metav1.Time `json:"contentTimestamp,omitempty"` ContentUrl string `json:"contentUrl,omitempty"` Hash string `json:"hash,omitempty"` // The dashboard instanceSelector can't find matching grafana instances NoMatchingInstances bool `json:"NoMatchingInstances,omitempty"` UID string `json:"uid,omitempty"` }
GrafanaDashboardStatus defines the observed state of GrafanaDashboard
func (*GrafanaDashboardStatus) DeepCopy ¶
func (in *GrafanaDashboardStatus) DeepCopy() *GrafanaDashboardStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GrafanaDashboardStatus.
func (*GrafanaDashboardStatus) DeepCopyInto ¶
func (in *GrafanaDashboardStatus) DeepCopyInto(out *GrafanaDashboardStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GrafanaDashboardUrlAuthorization ¶ added in v5.13.0
type GrafanaDashboardUrlAuthorization struct {
BasicAuth *GrafanaDashboardUrlBasicAuth `json:"basicAuth,omitempty"`
}
func (*GrafanaDashboardUrlAuthorization) DeepCopy ¶ added in v5.13.0
func (in *GrafanaDashboardUrlAuthorization) DeepCopy() *GrafanaDashboardUrlAuthorization
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GrafanaDashboardUrlAuthorization.
func (*GrafanaDashboardUrlAuthorization) DeepCopyInto ¶ added in v5.13.0
func (in *GrafanaDashboardUrlAuthorization) DeepCopyInto(out *GrafanaDashboardUrlAuthorization)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GrafanaDashboardUrlBasicAuth ¶ added in v5.13.0
type GrafanaDashboardUrlBasicAuth struct { Username *v1.SecretKeySelector `json:"username,omitempty"` Password *v1.SecretKeySelector `json:"password,omitempty"` }
func (*GrafanaDashboardUrlBasicAuth) DeepCopy ¶ added in v5.13.0
func (in *GrafanaDashboardUrlBasicAuth) DeepCopy() *GrafanaDashboardUrlBasicAuth
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GrafanaDashboardUrlBasicAuth.
func (*GrafanaDashboardUrlBasicAuth) DeepCopyInto ¶ added in v5.13.0
func (in *GrafanaDashboardUrlBasicAuth) DeepCopyInto(out *GrafanaDashboardUrlBasicAuth)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GrafanaDatasource ¶
type GrafanaDatasource struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec GrafanaDatasourceSpec `json:"spec,omitempty"` Status GrafanaDatasourceStatus `json:"status,omitempty"` }
GrafanaDatasource is the Schema for the grafanadatasources API +kubebuilder:printcolumn:name="No matching instances",type="boolean",JSONPath=".status.NoMatchingInstances",description="" +kubebuilder:printcolumn:name="Last resync",type="date",format="date-time",JSONPath=".status.lastResync",description="" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp",description="" +kubebuilder:resource:categories={grafana-operator}
func (*GrafanaDatasource) CustomUIDOrUID ¶ added in v5.16.0
func (in *GrafanaDatasource) CustomUIDOrUID() string
Wrapper around CustomUID, datasourcelUID or default metadata.uid
func (*GrafanaDatasource) DeepCopy ¶
func (in *GrafanaDatasource) DeepCopy() *GrafanaDatasource
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GrafanaDatasource.
func (*GrafanaDatasource) DeepCopyInto ¶
func (in *GrafanaDatasource) DeepCopyInto(out *GrafanaDatasource)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*GrafanaDatasource) DeepCopyObject ¶
func (in *GrafanaDatasource) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*GrafanaDatasource) IsAllowCrossNamespaceImport ¶
func (in *GrafanaDatasource) IsAllowCrossNamespaceImport() bool
func (*GrafanaDatasource) IsUpdatedUID ¶
func (in *GrafanaDatasource) IsUpdatedUID() bool
func (*GrafanaDatasource) ResyncPeriodHasElapsed ¶
func (in *GrafanaDatasource) ResyncPeriodHasElapsed() bool
func (*GrafanaDatasource) Unchanged ¶
func (in *GrafanaDatasource) Unchanged(hash string) bool
type GrafanaDatasourceInternal ¶
type GrafanaDatasourceInternal struct { // Deprecated field, use spec.uid instead // +optional UID string `json:"uid,omitempty"` Name string `json:"name,omitempty"` Type string `json:"type,omitempty"` URL string `json:"url,omitempty"` Access string `json:"access,omitempty"` Database string `json:"database,omitempty"` User string `json:"user,omitempty"` IsDefault *bool `json:"isDefault,omitempty"` BasicAuth *bool `json:"basicAuth,omitempty"` BasicAuthUser string `json:"basicAuthUser,omitempty"` // Deprecated field, it has no effect OrgID *int64 `json:"orgId,omitempty"` // Whether to enable/disable editing of the datasource in Grafana UI // +optional Editable *bool `json:"editable,omitempty"` // +kubebuilder:validation:Schemaless // +kubebuilder:pruning:PreserveUnknownFields // +kubebuilder:validation:Type=object // +optional JSONData json.RawMessage `json:"jsonData,omitempty"` // +kubebuilder:validation:Schemaless // +kubebuilder:pruning:PreserveUnknownFields // +kubebuilder:validation:Type=object // +optional SecureJSONData json.RawMessage `json:"secureJsonData,omitempty"` }
func (*GrafanaDatasourceInternal) DeepCopy ¶
func (in *GrafanaDatasourceInternal) DeepCopy() *GrafanaDatasourceInternal
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GrafanaDatasourceInternal.
func (*GrafanaDatasourceInternal) DeepCopyInto ¶
func (in *GrafanaDatasourceInternal) DeepCopyInto(out *GrafanaDatasourceInternal)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GrafanaDatasourceList ¶
type GrafanaDatasourceList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []GrafanaDatasource `json:"items"` }
GrafanaDatasourceList contains a list of GrafanaDatasource
func (*GrafanaDatasourceList) DeepCopy ¶
func (in *GrafanaDatasourceList) DeepCopy() *GrafanaDatasourceList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GrafanaDatasourceList.
func (*GrafanaDatasourceList) DeepCopyInto ¶
func (in *GrafanaDatasourceList) DeepCopyInto(out *GrafanaDatasourceList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*GrafanaDatasourceList) DeepCopyObject ¶
func (in *GrafanaDatasourceList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*GrafanaDatasourceList) Find ¶
func (in *GrafanaDatasourceList) Find(namespace string, name string) *GrafanaDatasource
type GrafanaDatasourceSpec ¶
type GrafanaDatasourceSpec struct { GrafanaCommonSpec `json:",inline"` // The UID, for the datasource, fallback to the deprecated spec.datasource.uid and metadata.uid // +optional // +kubebuilder:validation:XValidation:rule="self == oldSelf",message="spec.uid is immutable" CustomUID string `json:"uid,omitempty"` Datasource *GrafanaDatasourceInternal `json:"datasource"` // plugins // +optional Plugins PluginList `json:"plugins,omitempty"` // environments variables from secrets or config maps // +optional // +kubebuilder:validation:MaxItems=99 ValuesFrom []ValueFrom `json:"valuesFrom,omitempty"` }
GrafanaDatasourceSpec defines the desired state of GrafanaDatasource +kubebuilder:validation:XValidation:rule="((!has(oldSelf.uid) && !has(self.uid)) || (has(oldSelf.uid) && has(self.uid)))", message="spec.uid is immutable"
func (*GrafanaDatasourceSpec) DeepCopy ¶
func (in *GrafanaDatasourceSpec) DeepCopy() *GrafanaDatasourceSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GrafanaDatasourceSpec.
func (*GrafanaDatasourceSpec) DeepCopyInto ¶
func (in *GrafanaDatasourceSpec) DeepCopyInto(out *GrafanaDatasourceSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GrafanaDatasourceStatus ¶
type GrafanaDatasourceStatus struct { GrafanaCommonStatus `json:",inline"` Hash string `json:"hash,omitempty"` LastMessage string `json:"lastMessage,omitempty"` // The datasource instanceSelector can't find matching grafana instances NoMatchingInstances bool `json:"NoMatchingInstances,omitempty"` UID string `json:"uid,omitempty"` }
GrafanaDatasourceStatus defines the observed state of GrafanaDatasource
func (*GrafanaDatasourceStatus) DeepCopy ¶
func (in *GrafanaDatasourceStatus) DeepCopy() *GrafanaDatasourceStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GrafanaDatasourceStatus.
func (*GrafanaDatasourceStatus) DeepCopyInto ¶
func (in *GrafanaDatasourceStatus) DeepCopyInto(out *GrafanaDatasourceStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GrafanaFolder ¶
type GrafanaFolder struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec GrafanaFolderSpec `json:"spec,omitempty"` Status GrafanaFolderStatus `json:"status,omitempty"` }
GrafanaFolder is the Schema for the grafanafolders API +kubebuilder:printcolumn:name="No matching instances",type="boolean",JSONPath=".status.NoMatchingInstances",description="" +kubebuilder:printcolumn:name="Last resync",type="date",format="date-time",JSONPath=".status.lastResync",description="" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp",description="" +kubebuilder:resource:categories={grafana-operator}
func (*GrafanaFolder) AllowCrossNamespace ¶ added in v5.16.0
func (in *GrafanaFolder) AllowCrossNamespace() bool
func (*GrafanaFolder) Conditions ¶ added in v5.11.0
func (in *GrafanaFolder) Conditions() *[]metav1.Condition
Conditions implements FolderReferencer.
func (*GrafanaFolder) CurrentGeneration ¶ added in v5.11.0
func (in *GrafanaFolder) CurrentGeneration() int64
CurrentGeneration implements FolderReferencer.
func (*GrafanaFolder) CustomUIDOrUID ¶ added in v5.15.0
func (in *GrafanaFolder) CustomUIDOrUID() string
Wrapper around CustomUID or default metadata.uid
func (*GrafanaFolder) DeepCopy ¶
func (in *GrafanaFolder) DeepCopy() *GrafanaFolder
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GrafanaFolder.
func (*GrafanaFolder) DeepCopyInto ¶
func (in *GrafanaFolder) DeepCopyInto(out *GrafanaFolder)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*GrafanaFolder) DeepCopyObject ¶
func (in *GrafanaFolder) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*GrafanaFolder) FolderNamespace ¶ added in v5.11.0
func (in *GrafanaFolder) FolderNamespace() string
FolderNamespace implements FolderReferencer.
func (*GrafanaFolder) FolderRef ¶ added in v5.11.0
func (in *GrafanaFolder) FolderRef() string
FolderRef implements FolderReferencer.
func (*GrafanaFolder) FolderUID ¶ added in v5.11.0
func (in *GrafanaFolder) FolderUID() string
FolderUID implements FolderReferencer.
func (*GrafanaFolder) GetTitle ¶
func (in *GrafanaFolder) GetTitle() string
func (*GrafanaFolder) Hash ¶
func (in *GrafanaFolder) Hash() string
func (*GrafanaFolder) MatchLabels ¶ added in v5.16.0
func (in *GrafanaFolder) MatchLabels() *metav1.LabelSelector
func (*GrafanaFolder) MatchNamespace ¶ added in v5.16.0
func (in *GrafanaFolder) MatchNamespace() string
func (*GrafanaFolder) ResyncPeriodHasElapsed ¶
func (in *GrafanaFolder) ResyncPeriodHasElapsed() bool
func (*GrafanaFolder) Unchanged ¶
func (in *GrafanaFolder) Unchanged() bool
type GrafanaFolderList ¶
type GrafanaFolderList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []GrafanaFolder `json:"items"` }
GrafanaFolderList contains a list of GrafanaFolder
func (*GrafanaFolderList) DeepCopy ¶
func (in *GrafanaFolderList) DeepCopy() *GrafanaFolderList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GrafanaFolderList.
func (*GrafanaFolderList) DeepCopyInto ¶
func (in *GrafanaFolderList) DeepCopyInto(out *GrafanaFolderList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*GrafanaFolderList) DeepCopyObject ¶
func (in *GrafanaFolderList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*GrafanaFolderList) Find ¶
func (in *GrafanaFolderList) Find(namespace string, name string) *GrafanaFolder
type GrafanaFolderSpec ¶
type GrafanaFolderSpec struct { GrafanaCommonSpec `json:",inline"` // Manually specify the UID the Folder is created with // +optional // +kubebuilder:validation:XValidation:rule="self == oldSelf",message="spec.uid is immutable" CustomUID string `json:"uid,omitempty"` // Display name of the folder in Grafana // +optional Title string `json:"title,omitempty"` // Raw json with folder permissions, potentially exported from Grafana // +optional Permissions string `json:"permissions,omitempty"` // UID of the folder in which the current folder should be created // +optional ParentFolderUID string `json:"parentFolderUID,omitempty"` // Reference to an existing GrafanaFolder CR in the same namespace // +optional ParentFolderRef string `json:"parentFolderRef,omitempty"` }
GrafanaFolderSpec defines the desired state of GrafanaFolder +kubebuilder:validation:XValidation:rule="(has(self.parentFolderUID) && !(has(self.parentFolderRef))) || (has(self.parentFolderRef) && !(has(self.parentFolderUID))) || !(has(self.parentFolderRef) && (has(self.parentFolderUID)))", message="Only one of parentFolderUID or parentFolderRef can be set" +kubebuilder:validation:XValidation:rule="((!has(oldSelf.uid) && !has(self.uid)) || (has(oldSelf.uid) && has(self.uid)))", message="spec.uid is immutable"
func (*GrafanaFolderSpec) DeepCopy ¶
func (in *GrafanaFolderSpec) DeepCopy() *GrafanaFolderSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GrafanaFolderSpec.
func (*GrafanaFolderSpec) DeepCopyInto ¶
func (in *GrafanaFolderSpec) DeepCopyInto(out *GrafanaFolderSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GrafanaFolderStatus ¶
type GrafanaFolderStatus struct { GrafanaCommonStatus `json:",inline"` Hash string `json:"hash,omitempty"` // The folder instanceSelector can't find matching grafana instances NoMatchingInstances bool `json:"NoMatchingInstances,omitempty"` }
GrafanaFolderStatus defines the observed state of GrafanaFolder
func (*GrafanaFolderStatus) DeepCopy ¶
func (in *GrafanaFolderStatus) DeepCopy() *GrafanaFolderStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GrafanaFolderStatus.
func (*GrafanaFolderStatus) DeepCopyInto ¶
func (in *GrafanaFolderStatus) DeepCopyInto(out *GrafanaFolderStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GrafanaList ¶
type GrafanaList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []Grafana `json:"items"` }
GrafanaList contains a list of Grafana
func (*GrafanaList) DeepCopy ¶
func (in *GrafanaList) DeepCopy() *GrafanaList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GrafanaList.
func (*GrafanaList) DeepCopyInto ¶
func (in *GrafanaList) DeepCopyInto(out *GrafanaList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*GrafanaList) DeepCopyObject ¶
func (in *GrafanaList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type GrafanaNotificationPolicy ¶ added in v5.12.0
type GrafanaNotificationPolicy struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec GrafanaNotificationPolicySpec `json:"spec,omitempty"` Status GrafanaCommonStatus `json:"status,omitempty"` }
GrafanaNotificationPolicy is the Schema for the GrafanaNotificationPolicy API +kubebuilder:printcolumn:name="Last resync",type="date",format="date-time",JSONPath=".status.lastResync",description="" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp",description="" +kubebuilder:resource:categories={grafana-operator}
func (*GrafanaNotificationPolicy) AllowCrossNamespace ¶ added in v5.16.0
func (in *GrafanaNotificationPolicy) AllowCrossNamespace() bool
func (*GrafanaNotificationPolicy) DeepCopy ¶ added in v5.12.0
func (in *GrafanaNotificationPolicy) DeepCopy() *GrafanaNotificationPolicy
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GrafanaNotificationPolicy.
func (*GrafanaNotificationPolicy) DeepCopyInto ¶ added in v5.12.0
func (in *GrafanaNotificationPolicy) DeepCopyInto(out *GrafanaNotificationPolicy)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*GrafanaNotificationPolicy) DeepCopyObject ¶ added in v5.12.0
func (in *GrafanaNotificationPolicy) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*GrafanaNotificationPolicy) MatchLabels ¶ added in v5.16.0
func (in *GrafanaNotificationPolicy) MatchLabels() *metav1.LabelSelector
func (*GrafanaNotificationPolicy) MatchNamespace ¶ added in v5.16.0
func (in *GrafanaNotificationPolicy) MatchNamespace() string
func (*GrafanaNotificationPolicy) NamespacedResource ¶ added in v5.12.0
func (np *GrafanaNotificationPolicy) NamespacedResource() string
type GrafanaNotificationPolicyList ¶ added in v5.12.0
type GrafanaNotificationPolicyList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []GrafanaNotificationPolicy `json:"items"` }
GrafanaNotificationPolicyList contains a list of GrafanaNotificationPolicy
func (*GrafanaNotificationPolicyList) DeepCopy ¶ added in v5.12.0
func (in *GrafanaNotificationPolicyList) DeepCopy() *GrafanaNotificationPolicyList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GrafanaNotificationPolicyList.
func (*GrafanaNotificationPolicyList) DeepCopyInto ¶ added in v5.12.0
func (in *GrafanaNotificationPolicyList) DeepCopyInto(out *GrafanaNotificationPolicyList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*GrafanaNotificationPolicyList) DeepCopyObject ¶ added in v5.12.0
func (in *GrafanaNotificationPolicyList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type GrafanaNotificationPolicySpec ¶ added in v5.12.0
type GrafanaNotificationPolicySpec struct { GrafanaCommonSpec `json:",inline"` // Routes for alerts to match against Route *Route `json:"route"` // Whether to enable or disable editing of the notification policy in Grafana UI // +kubebuilder:validation:XValidation:rule="self == oldSelf",message="Value is immutable" // +optional Editable *bool `json:"editable,omitempty"` }
GrafanaNotificationPolicySpec defines the desired state of GrafanaNotificationPolicy +kubebuilder:validation:XValidation:rule="((!has(oldSelf.editable) && !has(self.editable)) || (has(oldSelf.editable) && has(self.editable)))", message="spec.editable is immutable"
func (*GrafanaNotificationPolicySpec) DeepCopy ¶ added in v5.12.0
func (in *GrafanaNotificationPolicySpec) DeepCopy() *GrafanaNotificationPolicySpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GrafanaNotificationPolicySpec.
func (*GrafanaNotificationPolicySpec) DeepCopyInto ¶ added in v5.12.0
func (in *GrafanaNotificationPolicySpec) DeepCopyInto(out *GrafanaNotificationPolicySpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GrafanaNotificationTemplate ¶ added in v5.16.0
type GrafanaNotificationTemplate struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec GrafanaNotificationTemplateSpec `json:"spec,omitempty"` Status GrafanaCommonStatus `json:"status,omitempty"` }
GrafanaNotificationTemplate is the Schema for the GrafanaNotificationTemplate API +kubebuilder:printcolumn:name="Last resync",type="date",format="date-time",JSONPath=".status.lastResync",description="" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp",description="" +kubebuilder:resource:categories={grafana-operator}
func (*GrafanaNotificationTemplate) AllowCrossNamespace ¶ added in v5.16.0
func (in *GrafanaNotificationTemplate) AllowCrossNamespace() bool
func (*GrafanaNotificationTemplate) DeepCopy ¶ added in v5.16.0
func (in *GrafanaNotificationTemplate) DeepCopy() *GrafanaNotificationTemplate
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GrafanaNotificationTemplate.
func (*GrafanaNotificationTemplate) DeepCopyInto ¶ added in v5.16.0
func (in *GrafanaNotificationTemplate) DeepCopyInto(out *GrafanaNotificationTemplate)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*GrafanaNotificationTemplate) DeepCopyObject ¶ added in v5.16.0
func (in *GrafanaNotificationTemplate) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*GrafanaNotificationTemplate) MatchLabels ¶ added in v5.16.0
func (in *GrafanaNotificationTemplate) MatchLabels() *metav1.LabelSelector
func (*GrafanaNotificationTemplate) MatchNamespace ¶ added in v5.16.0
func (in *GrafanaNotificationTemplate) MatchNamespace() string
func (*GrafanaNotificationTemplate) NamespacedResource ¶ added in v5.16.0
func (np *GrafanaNotificationTemplate) NamespacedResource() string
type GrafanaNotificationTemplateList ¶ added in v5.16.0
type GrafanaNotificationTemplateList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []GrafanaNotificationTemplate `json:"items"` }
GrafanaNotificationTemplateList contains a list of GrafanaNotificationTemplate
func (*GrafanaNotificationTemplateList) DeepCopy ¶ added in v5.16.0
func (in *GrafanaNotificationTemplateList) DeepCopy() *GrafanaNotificationTemplateList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GrafanaNotificationTemplateList.
func (*GrafanaNotificationTemplateList) DeepCopyInto ¶ added in v5.16.0
func (in *GrafanaNotificationTemplateList) DeepCopyInto(out *GrafanaNotificationTemplateList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*GrafanaNotificationTemplateList) DeepCopyObject ¶ added in v5.16.0
func (in *GrafanaNotificationTemplateList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type GrafanaNotificationTemplateSpec ¶ added in v5.16.0
type GrafanaNotificationTemplateSpec struct { GrafanaCommonSpec `json:",inline"` // Template name Name string `json:"name"` // Template content Template string `json:"template,omitempty"` // Whether to enable or disable editing of the notification template in Grafana UI // +kubebuilder:validation:XValidation:rule="self == oldSelf",message="spec.editable is immutable" // +optional Editable *bool `json:"editable,omitempty"` }
GrafanaNotificationTemplateSpec defines the desired state of GrafanaNotificationTemplate +kubebuilder:validation:XValidation:rule="((!has(oldSelf.editable) && !has(self.editable)) || (has(oldSelf.editable) && has(self.editable)))", message="spec.editable is immutable"
func (*GrafanaNotificationTemplateSpec) DeepCopy ¶ added in v5.16.0
func (in *GrafanaNotificationTemplateSpec) DeepCopy() *GrafanaNotificationTemplateSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GrafanaNotificationTemplateSpec.
func (*GrafanaNotificationTemplateSpec) DeepCopyInto ¶ added in v5.16.0
func (in *GrafanaNotificationTemplateSpec) DeepCopyInto(out *GrafanaNotificationTemplateSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GrafanaPlugin ¶
func (*GrafanaPlugin) DeepCopy ¶
func (in *GrafanaPlugin) DeepCopy() *GrafanaPlugin
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GrafanaPlugin.
func (*GrafanaPlugin) DeepCopyInto ¶
func (in *GrafanaPlugin) DeepCopyInto(out *GrafanaPlugin)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GrafanaPreferences ¶
type GrafanaPreferences struct {
HomeDashboardUID string `json:"homeDashboardUid,omitempty"`
}
GrafanaPreferences holds Grafana preferences API settings
func (*GrafanaPreferences) DeepCopy ¶
func (in *GrafanaPreferences) DeepCopy() *GrafanaPreferences
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GrafanaPreferences.
func (*GrafanaPreferences) DeepCopyInto ¶
func (in *GrafanaPreferences) DeepCopyInto(out *GrafanaPreferences)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GrafanaSpec ¶
type GrafanaSpec struct { // +kubebuilder:pruning:PreserveUnknownFields // Config defines how your grafana ini file should looks like. Config map[string]map[string]string `json:"config,omitempty"` // Ingress sets how the ingress object should look like with your grafana instance. Ingress *IngressNetworkingV1 `json:"ingress,omitempty"` // Route sets how the ingress object should look like with your grafana instance, this only works in Openshift. Route *RouteOpenshiftV1 `json:"route,omitempty"` // Service sets how the service object should look like with your grafana instance, contains a number of defaults. Service *ServiceV1 `json:"service,omitempty"` // Version specifies the version of Grafana to use for this deployment. It follows the same format as the docker.io/grafana/grafana tags Version string `json:"version,omitempty"` // Deployment sets how the deployment object should look like with your grafana instance, contains a number of defaults. Deployment *DeploymentV1 `json:"deployment,omitempty"` // PersistentVolumeClaim creates a PVC if you need to attach one to your grafana instance. PersistentVolumeClaim *PersistentVolumeClaimV1 `json:"persistentVolumeClaim,omitempty"` // ServiceAccount sets how the ServiceAccount object should look like with your grafana instance, contains a number of defaults. ServiceAccount *ServiceAccountV1 `json:"serviceAccount,omitempty"` // Client defines how the grafana-operator talks to the grafana instance. Client *GrafanaClient `json:"client,omitempty"` Jsonnet *JsonnetConfig `json:"jsonnet,omitempty"` // External enables you to configure external grafana instances that is not managed by the operator. External *External `json:"external,omitempty"` // Preferences holds the Grafana Preferences settings Preferences *GrafanaPreferences `json:"preferences,omitempty"` }
GrafanaSpec defines the desired state of Grafana
func (*GrafanaSpec) DeepCopy ¶
func (in *GrafanaSpec) DeepCopy() *GrafanaSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GrafanaSpec.
func (*GrafanaSpec) DeepCopyInto ¶
func (in *GrafanaSpec) DeepCopyInto(out *GrafanaSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GrafanaStatus ¶
type GrafanaStatus struct { Stage OperatorStageName `json:"stage,omitempty"` StageStatus OperatorStageStatus `json:"stageStatus,omitempty"` LastMessage string `json:"lastMessage,omitempty"` AdminUrl string `json:"adminUrl,omitempty"` Dashboards NamespacedResourceList `json:"dashboards,omitempty"` Datasources NamespacedResourceList `json:"datasources,omitempty"` Folders NamespacedResourceList `json:"folders,omitempty"` Version string `json:"version,omitempty"` }
GrafanaStatus defines the observed state of Grafana
func (*GrafanaStatus) DeepCopy ¶
func (in *GrafanaStatus) DeepCopy() *GrafanaStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GrafanaStatus.
func (*GrafanaStatus) DeepCopyInto ¶
func (in *GrafanaStatus) DeepCopyInto(out *GrafanaStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type IngressNetworkingV1 ¶
type IngressNetworkingV1 struct { ObjectMeta ObjectMeta `json:"metadata,omitempty"` Spec *v1.IngressSpec `json:"spec,omitempty"` }
func (*IngressNetworkingV1) DeepCopy ¶
func (in *IngressNetworkingV1) DeepCopy() *IngressNetworkingV1
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IngressNetworkingV1.
func (*IngressNetworkingV1) DeepCopyInto ¶
func (in *IngressNetworkingV1) DeepCopyInto(out *IngressNetworkingV1)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type JsonnetConfig ¶
type JsonnetConfig struct {
LibraryLabelSelector *metav1.LabelSelector `json:"libraryLabelSelector,omitempty"`
}
func (*JsonnetConfig) DeepCopy ¶
func (in *JsonnetConfig) DeepCopy() *JsonnetConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new JsonnetConfig.
func (*JsonnetConfig) DeepCopyInto ¶
func (in *JsonnetConfig) DeepCopyInto(out *JsonnetConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type JsonnetProjectBuild ¶
type JsonnetProjectBuild struct { JPath []string `json:"jPath,omitempty"` FileName string `json:"fileName"` GzipJsonnetProject []byte `json:"gzipJsonnetProject"` }
func (*JsonnetProjectBuild) DeepCopy ¶
func (in *JsonnetProjectBuild) DeepCopy() *JsonnetProjectBuild
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new JsonnetProjectBuild.
func (*JsonnetProjectBuild) DeepCopyInto ¶
func (in *JsonnetProjectBuild) DeepCopyInto(out *JsonnetProjectBuild)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Matcher ¶ added in v5.12.0
type Matcher struct { // is equal IsEqual bool `json:"isEqual,omitempty"` // is regex IsRegex bool `json:"isRegex"` // name Name *string `json:"name,omitempty"` // value Value string `json:"value"` }
func (*Matcher) DeepCopy ¶ added in v5.12.0
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Matcher.
func (*Matcher) DeepCopyInto ¶ added in v5.12.0
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Matchers ¶ added in v5.12.0
type Matchers []*Matcher
func (Matchers) DeepCopy ¶ added in v5.12.0
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Matchers.
func (Matchers) DeepCopyInto ¶ added in v5.12.0
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (Matchers) ToModelMatchers ¶ added in v5.12.0
type NamespacedResource ¶
type NamespacedResource string
func (NamespacedResource) Name ¶
func (in NamespacedResource) Name() string
func (NamespacedResource) Namespace ¶
func (in NamespacedResource) Namespace() string
func (NamespacedResource) Uid ¶
func (in NamespacedResource) Uid() string
type NamespacedResourceList ¶
type NamespacedResourceList []NamespacedResource
func (NamespacedResourceList) Add ¶
func (in NamespacedResourceList) Add(namespace string, name string, uid string) NamespacedResourceList
func (NamespacedResourceList) DeepCopy ¶
func (in NamespacedResourceList) DeepCopy() NamespacedResourceList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NamespacedResourceList.
func (NamespacedResourceList) DeepCopyInto ¶
func (in NamespacedResourceList) DeepCopyInto(out *NamespacedResourceList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (NamespacedResourceList) Find ¶
func (in NamespacedResourceList) Find(namespace string, name string) (bool, *string)
func (NamespacedResourceList) ForNamespace ¶
func (in NamespacedResourceList) ForNamespace(namespace string) NamespacedResourceList
func (NamespacedResourceList) Remove ¶
func (in NamespacedResourceList) Remove(namespace string, name string) NamespacedResourceList
type NotificationSettings ¶ added in v5.9.1
type NotificationSettings struct { GroupBy []string `json:"group_by,omitempty"` GroupInterval string `json:"group_interval,omitempty"` GroupWait string `json:"group_wait,omitempty"` Receiver string `json:"receiver"` MuteTimeIntervals []string `json:"mute_time_intervals,omitempty"` RepeatInterval string `json:"repeat_interval,omitempty"` }
func (*NotificationSettings) DeepCopy ¶ added in v5.9.1
func (in *NotificationSettings) DeepCopy() *NotificationSettings
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NotificationSettings.
func (*NotificationSettings) DeepCopyInto ¶ added in v5.9.1
func (in *NotificationSettings) DeepCopyInto(out *NotificationSettings)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ObjectMeta ¶
type ObjectMeta struct { Annotations map[string]string `json:"annotations,omitempty"` Labels map[string]string `json:"labels,omitempty"` }
ObjectMeta contains only a [subset of the fields included in k8s.io/apimachinery/pkg/apis/meta/v1.ObjectMeta](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.27/#objectmeta-v1-meta).
func (*ObjectMeta) DeepCopy ¶
func (in *ObjectMeta) DeepCopy() *ObjectMeta
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ObjectMeta.
func (*ObjectMeta) DeepCopyInto ¶
func (in *ObjectMeta) DeepCopyInto(out *ObjectMeta)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ObjectMeta) Merge ¶
func (override *ObjectMeta) Merge(meta metav1.ObjectMeta) metav1.ObjectMeta
Merge merges it's receivers values into the incoming ObjectMeta by overwriting values for existing keys and adding new ones.
type OperatorReconcileVars ¶
type OperatorReconcileVars struct { // used to restart the Grafana container when the config changes ConfigHash string // env var value for installed plugins Plugins string }
temporary values passed between reconciler stages
func (*OperatorReconcileVars) DeepCopy ¶
func (in *OperatorReconcileVars) DeepCopy() *OperatorReconcileVars
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OperatorReconcileVars.
func (*OperatorReconcileVars) DeepCopyInto ¶
func (in *OperatorReconcileVars) DeepCopyInto(out *OperatorReconcileVars)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type OperatorStageName ¶
type OperatorStageName string
const ( OperatorStageGrafanaConfig OperatorStageName = "config" OperatorStageAdminUser OperatorStageName = "admin user" OperatorStagePvc OperatorStageName = "pvc" OperatorStageServiceAccount OperatorStageName = "service account" OperatorStageService OperatorStageName = "service" OperatorStageIngress OperatorStageName = "ingress" OperatorStagePlugins OperatorStageName = "plugins" OperatorStageDeployment OperatorStageName = "deployment" OperatorStageComplete OperatorStageName = "complete" )
type OperatorStageStatus ¶
type OperatorStageStatus string
const ( OperatorStageResultSuccess OperatorStageStatus = "success" OperatorStageResultFailed OperatorStageStatus = "failed" OperatorStageResultInProgress OperatorStageStatus = "in progress" )
type PersistentVolumeClaimV1 ¶
type PersistentVolumeClaimV1 struct { ObjectMeta ObjectMeta `json:"metadata,omitempty"` Spec *PersistentVolumeClaimV1Spec `json:"spec,omitempty"` }
func (*PersistentVolumeClaimV1) DeepCopy ¶
func (in *PersistentVolumeClaimV1) DeepCopy() *PersistentVolumeClaimV1
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PersistentVolumeClaimV1.
func (*PersistentVolumeClaimV1) DeepCopyInto ¶
func (in *PersistentVolumeClaimV1) DeepCopyInto(out *PersistentVolumeClaimV1)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PersistentVolumeClaimV1Spec ¶
type PersistentVolumeClaimV1Spec struct { // +optional AccessModes []v14.PersistentVolumeAccessMode `json:"accessModes,omitempty" protobuf:"bytes,1,rep,name=accessModes,casttype=PersistentVolumeAccessMode"` // +optional Selector *metav1.LabelSelector `json:"selector,omitempty" protobuf:"bytes,4,opt,name=selector"` // +optional Resources *v14.ResourceRequirements `json:"resources,omitempty" protobuf:"bytes,2,opt,name=resources"` // VolumeName is the binding reference to the PersistentVolume backing this claim. // +optional VolumeName string `json:"volumeName,omitempty" protobuf:"bytes,3,opt,name=volumeName"` // +optional StorageClassName *string `json:"storageClassName,omitempty" protobuf:"bytes,5,opt,name=storageClassName"` // +optional VolumeMode *v14.PersistentVolumeMode `json:"volumeMode,omitempty" protobuf:"bytes,6,opt,name=volumeMode,casttype=PersistentVolumeMode"` // +optional DataSource *v14.TypedLocalObjectReference `json:"dataSource,omitempty" protobuf:"bytes,7,opt,name=dataSource"` // +optional DataSourceRef *v14.TypedLocalObjectReference `json:"dataSourceRef,omitempty" protobuf:"bytes,8,opt,name=dataSourceRef"` }
func (*PersistentVolumeClaimV1Spec) DeepCopy ¶
func (in *PersistentVolumeClaimV1Spec) DeepCopy() *PersistentVolumeClaimV1Spec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PersistentVolumeClaimV1Spec.
func (*PersistentVolumeClaimV1Spec) DeepCopyInto ¶
func (in *PersistentVolumeClaimV1Spec) DeepCopyInto(out *PersistentVolumeClaimV1Spec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PluginList ¶
type PluginList []GrafanaPlugin
func (PluginList) DeepCopy ¶
func (in PluginList) DeepCopy() PluginList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PluginList.
func (PluginList) DeepCopyInto ¶
func (in PluginList) DeepCopyInto(out *PluginList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (PluginList) GetInstalledVersionOf ¶
func (l PluginList) GetInstalledVersionOf(plugin *GrafanaPlugin) *GrafanaPlugin
GetInstalledVersionOf gets the plugin from the list regardless of the version
func (PluginList) HasExactVersionOf ¶
func (l PluginList) HasExactVersionOf(plugin *GrafanaPlugin) bool
HasExactVersionOf returns true if the list contains the same plugin in the same version
func (PluginList) HasNewerVersionOf ¶
func (l PluginList) HasNewerVersionOf(plugin *GrafanaPlugin) (bool, error)
HasNewerVersionOf returns true if the list contains the same plugin but in a newer version
func (PluginList) HasSomeVersionOf ¶
func (l PluginList) HasSomeVersionOf(plugin *GrafanaPlugin) bool
HasSomeVersionOf returns true if the list contains the same plugin in the exact or a different version
func (PluginList) Hash ¶
func (l PluginList) Hash() string
func (PluginList) Sanitize ¶
func (l PluginList) Sanitize() PluginList
Sanitize remove duplicates and enforce semver
func (PluginList) String ¶
func (l PluginList) String() string
func (PluginList) Update ¶
func (l PluginList) Update(plugin *GrafanaPlugin)
Update update plugin version
func (PluginList) VersionsOf ¶
func (l PluginList) VersionsOf(plugin *GrafanaPlugin) int
VersionsOf returns the number of different versions of a given plugin in the list
type PluginMap ¶
type PluginMap map[string]PluginList
func (PluginMap) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PluginMap.
func (PluginMap) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Route ¶ added in v5.12.0
type Route struct { // continue Continue bool `json:"continue,omitempty"` // group by GroupBy []string `json:"group_by,omitempty"` // group interval GroupInterval string `json:"group_interval,omitempty"` // group wait GroupWait string `json:"group_wait,omitempty"` // match re MatchRe models.MatchRegexps `json:"match_re,omitempty"` // matchers Matchers Matchers `json:"matchers,omitempty"` // mute time intervals MuteTimeIntervals []string `json:"mute_time_intervals,omitempty"` // object matchers ObjectMatchers models.ObjectMatchers `json:"object_matchers,omitempty"` // provenance Provenance models.Provenance `json:"provenance,omitempty"` // receiver Receiver string `json:"receiver,omitempty"` // repeat interval RepeatInterval string `json:"repeat_interval,omitempty"` // routes // +kubebuilder:pruning:PreserveUnknownFields // +kubebuilder:validation:Schemaless Routes []*Route `json:"routes,omitempty"` }
func (*Route) DeepCopy ¶ added in v5.12.0
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Route.
func (*Route) DeepCopyInto ¶ added in v5.12.0
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Route) ToModelRoute ¶ added in v5.12.0
type RouteOpenShiftV1Spec ¶
type RouteOpenShiftV1Spec struct { Host string `json:"host,omitempty" protobuf:"bytes,1,opt,name=host"` Path string `json:"path,omitempty" protobuf:"bytes,2,opt,name=path"` To *v12.RouteTargetReference `json:"to,omitempty" protobuf:"bytes,3,opt,name=to"` AlternateBackends []v12.RouteTargetReference `json:"alternateBackends,omitempty" protobuf:"bytes,4,rep,name=alternateBackends"` Port *v12.RoutePort `json:"port,omitempty" protobuf:"bytes,5,opt,name=port"` TLS *v12.TLSConfig `json:"tls,omitempty" protobuf:"bytes,6,opt,name=tls"` WildcardPolicy v12.WildcardPolicyType `json:"wildcardPolicy,omitempty" protobuf:"bytes,7,opt,name=wildcardPolicy"` }
func (*RouteOpenShiftV1Spec) DeepCopy ¶
func (in *RouteOpenShiftV1Spec) DeepCopy() *RouteOpenShiftV1Spec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RouteOpenShiftV1Spec.
func (*RouteOpenShiftV1Spec) DeepCopyInto ¶
func (in *RouteOpenShiftV1Spec) DeepCopyInto(out *RouteOpenShiftV1Spec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RouteOpenshiftV1 ¶
type RouteOpenshiftV1 struct { ObjectMeta ObjectMeta `json:"metadata,omitempty"` Spec *RouteOpenShiftV1Spec `json:"spec,omitempty"` }
func (*RouteOpenshiftV1) DeepCopy ¶
func (in *RouteOpenshiftV1) DeepCopy() *RouteOpenshiftV1
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RouteOpenshiftV1.
func (*RouteOpenshiftV1) DeepCopyInto ¶
func (in *RouteOpenshiftV1) DeepCopyInto(out *RouteOpenshiftV1)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ServiceAccountV1 ¶
type ServiceAccountV1 struct { ObjectMeta ObjectMeta `json:"metadata,omitempty"` Secrets []v14.ObjectReference `json:"secrets,omitempty" patchStrategy:"merge" patchMergeKey:"name" protobuf:"bytes,2,rep,name=secrets"` // +optional ImagePullSecrets []v14.LocalObjectReference `json:"imagePullSecrets,omitempty" protobuf:"bytes,3,rep,name=imagePullSecrets"` // +optional AutomountServiceAccountToken *bool `json:"automountServiceAccountToken,omitempty" protobuf:"varint,4,opt,name=automountServiceAccountToken"` }
func (*ServiceAccountV1) DeepCopy ¶
func (in *ServiceAccountV1) DeepCopy() *ServiceAccountV1
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceAccountV1.
func (*ServiceAccountV1) DeepCopyInto ¶
func (in *ServiceAccountV1) DeepCopyInto(out *ServiceAccountV1)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ServiceV1 ¶
type ServiceV1 struct { ObjectMeta ObjectMeta `json:"metadata,omitempty"` Spec *v14.ServiceSpec `json:"spec,omitempty"` }
func (*ServiceV1) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceV1.
func (*ServiceV1) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TLSConfig ¶ added in v5.15.0
type TLSConfig struct { // Disable the CA check of the server // +optional InsecureSkipVerify bool `json:"insecureSkipVerify,omitempty"` // Use a secret as a reference to give TLS Certificate information // +optional CertSecretRef *v1.SecretReference `json:"certSecretRef,omitempty"` }
TLSConfig specifies options to use when communicating with the Grafana endpoint +kubebuilder:validation:XValidation:rule="(has(self.insecureSkipVerify) && !(has(self.certSecretRef))) || (has(self.certSecretRef) && !(has(self.insecureSkipVerify)))", message="insecureSkipVerify and certSecretRef cannot be set at the same time"
func (*TLSConfig) DeepCopy ¶ added in v5.15.0
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TLSConfig.
func (*TLSConfig) DeepCopyInto ¶ added in v5.15.0
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ValueFrom ¶ added in v5.14.0
type ValueFrom struct { TargetPath string `json:"targetPath"` ValueFrom ValueFromSource `json:"valueFrom"` }
func (*ValueFrom) DeepCopy ¶ added in v5.14.0
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ValueFrom.
func (*ValueFrom) DeepCopyInto ¶ added in v5.14.0
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ValueFromSource ¶ added in v5.14.0
type ValueFromSource struct { // Selects a key of a ConfigMap. // +optional ConfigMapKeyRef *v1.ConfigMapKeySelector `json:"configMapKeyRef,omitempty"` // Selects a key of a Secret. // +optional SecretKeyRef *v1.SecretKeySelector `json:"secretKeyRef,omitempty"` }
+kubebuilder:validation:XValidation:rule="(has(self.configMapKeyRef) && !has(self.secretKeyRef)) || (!has(self.configMapKeyRef) && has(self.secretKeyRef))", message="Either configMapKeyRef or secretKeyRef must be set"
func (*ValueFromSource) DeepCopy ¶ added in v5.14.0
func (in *ValueFromSource) DeepCopy() *ValueFromSource
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ValueFromSource.
func (*ValueFromSource) DeepCopyInto ¶ added in v5.14.0
func (in *ValueFromSource) DeepCopyInto(out *ValueFromSource)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
Source Files
¶
- common.go
- grafana_types.go
- grafanaalertrulegroup_types.go
- grafanacontactpoint_types.go
- grafanadashboard_types.go
- grafanadatasource_types.go
- grafanafolder_types.go
- grafananotificationpolicy_types.go
- grafananotificationtemplate_types.go
- groupversion_info.go
- namespaced_resource.go
- plugin_list.go
- typeoverrides.go
- zz_generated.deepcopy.go