Documentation ¶
Overview ¶
Package v1beta2 contains API Schema definitions for the notification v1beta2 API group. +kubebuilder:object:generate=true +groupName=notification.toolkit.fluxcd.io
Index ¶
- Constants
- Variables
- type Alert
- type AlertList
- type AlertSpec
- type AlertStatus
- type CrossNamespaceObjectReference
- type Provider
- func (in *Provider) DeepCopy() *Provider
- func (in *Provider) DeepCopyInto(out *Provider)
- func (in *Provider) DeepCopyObject() runtime.Object
- func (in *Provider) GetConditions() []metav1.Condition
- func (in *Provider) GetInterval() time.Duration
- func (in *Provider) GetRequeueAfter() time.Duration
- func (in *Provider) GetTimeout() time.Duration
- func (in *Provider) SetConditions(conditions []metav1.Condition)
- type ProviderList
- type ProviderSpec
- type ProviderStatus
- type Receiver
- func (in *Receiver) DeepCopy() *Receiver
- func (in *Receiver) DeepCopyInto(out *Receiver)
- func (in *Receiver) DeepCopyObject() runtime.Object
- func (in *Receiver) GetConditions() []metav1.Condition
- func (in *Receiver) GetInterval() time.Duration
- func (in *Receiver) GetWebhookPath(token string) string
- func (in *Receiver) SetConditions(conditions []metav1.Condition)
- type ReceiverList
- type ReceiverSpec
- type ReceiverStatus
Constants ¶
const ( // InitializedReason represents the fact that a given resource has been initialized. InitializedReason string = "Initialized" // ValidationFailedReason represents the fact that some part of the spec of a given resource // couldn't be validated. ValidationFailedReason string = "ValidationFailed" // TokenNotFoundReason represents the fact that receiver token can't be found. TokenNotFoundReason string = "TokenNotFound" )
const ( ProviderKind string = "Provider" GenericProvider string = "generic" GenericHMACProvider string = "generic-hmac" SlackProvider string = "slack" GrafanaProvider string = "grafana" DiscordProvider string = "discord" MSTeamsProvider string = "msteams" RocketProvider string = "rocket" GitHubDispatchProvider string = "githubdispatch" GitHubProvider string = "github" GitLabProvider string = "gitlab" GiteaProvider string = "gitea" BitbucketServerProvider string = "bitbucketserver" BitbucketProvider string = "bitbucket" AzureDevOpsProvider string = "azuredevops" GoogleChatProvider string = "googlechat" GooglePubSubProvider string = "googlepubsub" WebexProvider string = "webex" SentryProvider string = "sentry" AzureEventHubProvider string = "azureeventhub" TelegramProvider string = "telegram" LarkProvider string = "lark" Matrix string = "matrix" OpsgenieProvider string = "opsgenie" AlertManagerProvider string = "alertmanager" PagerDutyProvider string = "pagerduty" DataDogProvider string = "datadog" )
const ( ReceiverKind string = "Receiver" ReceiverWebhookPath string = "/hook/" GenericReceiver string = "generic" GenericHMACReceiver string = "generic-hmac" GitHubReceiver string = "github" GitLabReceiver string = "gitlab" BitbucketReceiver string = "bitbucket" HarborReceiver string = "harbor" DockerHubReceiver string = "dockerhub" QuayReceiver string = "quay" GCRReceiver string = "gcr" NexusReceiver string = "nexus" ACRReceiver string = "acr" )
const (
AlertKind string = "Alert"
)
const NotificationFinalizer = "finalizers.fluxcd.io"
Variables ¶
var ( // GroupVersion is group version used to register these objects. GroupVersion = schema.GroupVersion{Group: "notification.toolkit.fluxcd.io", Version: "v1beta2"} // SchemeBuilder is used to add go types to the GroupVersionKind scheme. SchemeBuilder = &scheme.Builder{GroupVersion: GroupVersion} // AddToScheme adds the types in this group-version to the given scheme. AddToScheme = SchemeBuilder.AddToScheme )
Functions ¶
This section is empty.
Types ¶
type Alert ¶
type Alert struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec AlertSpec `json:"spec,omitempty"` // +kubebuilder:default:={"observedGeneration":-1} Status AlertStatus `json:"status,omitempty"` }
Alert is the Schema for the alerts API
func (*Alert) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Alert.
func (*Alert) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Alert) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*Alert) GetConditions ¶
GetConditions returns the status conditions of the object.
func (*Alert) SetConditions ¶
SetConditions sets the status conditions on the object.
type AlertList ¶
type AlertList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []Alert `json:"items"` }
AlertList contains a list of Alerts.
func (*AlertList) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AlertList.
func (*AlertList) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*AlertList) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type AlertSpec ¶
type AlertSpec struct { // ProviderRef specifies which Provider this Alert should use. // +required ProviderRef meta.LocalObjectReference `json:"providerRef"` // EventSeverity specifies how to filter events based on severity. // If set to 'info' no events will be filtered. // +kubebuilder:validation:Enum=info;error // +kubebuilder:default:=info // +optional EventSeverity string `json:"eventSeverity,omitempty"` // EventSources specifies how to filter events based // on the involved object kind, name and namespace. // +required EventSources []v1.CrossNamespaceObjectReference `json:"eventSources"` // InclusionList specifies a list of Golang regular expressions // to be used for including messages. // +optional InclusionList []string `json:"inclusionList,omitempty"` // EventMetadata is an optional field for adding metadata to events dispatched by the // controller. This can be used for enhancing the context of the event. If a field // would override one already present on the original event as generated by the emitter, // then the override doesn't happen, i.e. the original value is preserved, and an info // log is printed. // +optional EventMetadata map[string]string `json:"eventMetadata,omitempty"` // ExclusionList specifies a list of Golang regular expressions // to be used for excluding messages. // +optional ExclusionList []string `json:"exclusionList,omitempty"` // Summary holds a short description of the impact and affected cluster. // +kubebuilder:validation:MaxLength:=255 // +optional Summary string `json:"summary,omitempty"` // Suspend tells the controller to suspend subsequent // events handling for this Alert. // +optional Suspend bool `json:"suspend,omitempty"` }
AlertSpec defines an alerting rule for events involving a list of objects.
func (*AlertSpec) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AlertSpec.
func (*AlertSpec) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AlertStatus ¶
type AlertStatus struct { meta.ReconcileRequestStatus `json:",inline"` // Conditions holds the conditions for the Alert. // +optional Conditions []metav1.Condition `json:"conditions,omitempty"` // ObservedGeneration is the last observed generation. // +optional ObservedGeneration int64 `json:"observedGeneration,omitempty"` }
AlertStatus defines the observed state of the Alert.
func (*AlertStatus) DeepCopy ¶
func (in *AlertStatus) DeepCopy() *AlertStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AlertStatus.
func (*AlertStatus) DeepCopyInto ¶
func (in *AlertStatus) DeepCopyInto(out *AlertStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CrossNamespaceObjectReference ¶
type CrossNamespaceObjectReference struct { // API version of the referent. // +optional APIVersion string `json:"apiVersion,omitempty"` // Kind of the referent. // +kubebuilder:validation:Enum=Bucket;GitRepository;Kustomization;HelmRelease;HelmChart;HelmRepository;ImageRepository;ImagePolicy;ImageUpdateAutomation;OCIRepository // +required Kind string `json:"kind,omitempty"` // Name of the referent. // +kubebuilder:validation:MinLength=1 // +kubebuilder:validation:MaxLength=53 // +required Name string `json:"name"` // Namespace of the referent. // +kubebuilder:validation:MinLength=1 // +kubebuilder:validation:MaxLength=53 // +kubebuilder:validation:Optional // +optional Namespace string `json:"namespace,omitempty"` // MatchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels // map is equivalent to an element of matchExpressions, whose key field is "key", the // operator is "In", and the values array contains only "value". The requirements are ANDed. // +optional MatchLabels map[string]string `json:"matchLabels,omitempty"` }
CrossNamespaceObjectReference contains enough information to let you locate the typed referenced object at cluster level
func (*CrossNamespaceObjectReference) DeepCopy ¶
func (in *CrossNamespaceObjectReference) DeepCopy() *CrossNamespaceObjectReference
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CrossNamespaceObjectReference.
func (*CrossNamespaceObjectReference) DeepCopyInto ¶
func (in *CrossNamespaceObjectReference) DeepCopyInto(out *CrossNamespaceObjectReference)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Provider ¶
type Provider struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec ProviderSpec `json:"spec,omitempty"` // +kubebuilder:default:={"observedGeneration":-1} Status ProviderStatus `json:"status,omitempty"` }
Provider is the Schema for the providers API.
func (*Provider) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Provider.
func (*Provider) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Provider) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*Provider) GetConditions ¶
GetConditions returns the status conditions of the object.
func (*Provider) GetInterval ¶ added in v0.30.1
GetInterval returns the interval value with a default of 10m for this Provider.
func (*Provider) GetRequeueAfter ¶
GetRequeueAfter returns the duration after which the Provider must be reconciled again.
func (*Provider) GetTimeout ¶
GetTimeout returns the timeout value with a default of 15s for this Provider.
func (*Provider) SetConditions ¶
SetConditions sets the status conditions on the object.
type ProviderList ¶
type ProviderList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []Provider `json:"items"` }
ProviderList contains a list of Providers.
func (*ProviderList) DeepCopy ¶
func (in *ProviderList) DeepCopy() *ProviderList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProviderList.
func (*ProviderList) DeepCopyInto ¶
func (in *ProviderList) DeepCopyInto(out *ProviderList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ProviderList) DeepCopyObject ¶
func (in *ProviderList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ProviderSpec ¶
type ProviderSpec struct { // Type specifies which Provider implementation to use. // +kubebuilder:validation:Enum=slack;discord;msteams;rocket;generic;generic-hmac;github;gitlab;gitea;bitbucketserver;bitbucket;azuredevops;googlechat;googlepubsub;webex;sentry;azureeventhub;telegram;lark;matrix;opsgenie;alertmanager;grafana;githubdispatch;pagerduty;datadog // +required Type string `json:"type"` // Interval at which to reconcile the Provider with its Secret references. // +kubebuilder:validation:Type=string // +kubebuilder:validation:Pattern="^([0-9]+(\\.[0-9]+)?(ms|s|m|h))+$" // +optional Interval *metav1.Duration `json:"interval,omitempty"` // Channel specifies the destination channel where events should be posted. // +kubebuilder:validation:MaxLength:=2048 // +optional Channel string `json:"channel,omitempty"` // Username specifies the name under which events are posted. // +kubebuilder:validation:MaxLength:=2048 // +optional Username string `json:"username,omitempty"` // Address specifies the endpoint, in a generic sense, to where alerts are sent. // What kind of endpoint depends on the specific Provider type being used. // For the generic Provider, for example, this is an HTTP/S address. // For other Provider types this could be a project ID or a namespace. // +kubebuilder:validation:MaxLength:=2048 // +kubebuilder:validation:Optional // +optional Address string `json:"address,omitempty"` // Timeout for sending alerts to the Provider. // +kubebuilder:validation:Type=string // +kubebuilder:validation:Pattern="^([0-9]+(\\.[0-9]+)?(ms|s|m))+$" // +optional Timeout *metav1.Duration `json:"timeout,omitempty"` // Proxy the HTTP/S address of the proxy server. // +kubebuilder:validation:Pattern="^(http|https)://.*$" // +kubebuilder:validation:MaxLength:=2048 // +kubebuilder:validation:Optional // +optional Proxy string `json:"proxy,omitempty"` // SecretRef specifies the Secret containing the authentication // credentials for this Provider. // +optional SecretRef *meta.LocalObjectReference `json:"secretRef,omitempty"` // CertSecretRef specifies the Secret containing // a PEM-encoded CA certificate (in the `ca.crt` key). // +optional // // Note: Support for the `caFile` key has // been deprecated. CertSecretRef *meta.LocalObjectReference `json:"certSecretRef,omitempty"` // Suspend tells the controller to suspend subsequent // events handling for this Provider. // +optional Suspend bool `json:"suspend,omitempty"` }
ProviderSpec defines the desired state of the Provider.
func (*ProviderSpec) DeepCopy ¶
func (in *ProviderSpec) DeepCopy() *ProviderSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProviderSpec.
func (*ProviderSpec) DeepCopyInto ¶
func (in *ProviderSpec) DeepCopyInto(out *ProviderSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ProviderStatus ¶
type ProviderStatus struct { meta.ReconcileRequestStatus `json:",inline"` // Conditions holds the conditions for the Provider. // +optional Conditions []metav1.Condition `json:"conditions,omitempty"` // ObservedGeneration is the last reconciled generation. // +optional ObservedGeneration int64 `json:"observedGeneration,omitempty"` }
ProviderStatus defines the observed state of the Provider.
func (*ProviderStatus) DeepCopy ¶
func (in *ProviderStatus) DeepCopy() *ProviderStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProviderStatus.
func (*ProviderStatus) DeepCopyInto ¶
func (in *ProviderStatus) DeepCopyInto(out *ProviderStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Receiver ¶
type Receiver struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec ReceiverSpec `json:"spec,omitempty"` // +kubebuilder:default:={"observedGeneration":-1} Status ReceiverStatus `json:"status,omitempty"` }
Receiver is the Schema for the receivers API.
func (*Receiver) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Receiver.
func (*Receiver) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Receiver) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*Receiver) GetConditions ¶
GetConditions returns the status conditions of the object.
func (*Receiver) GetInterval ¶ added in v0.30.1
GetInterval returns the interval value with a default of 10m for this Receiver.
func (*Receiver) GetWebhookPath ¶
GetWebhookPath returns the incoming webhook path for the given token.
func (*Receiver) SetConditions ¶
SetConditions sets the status conditions on the object.
type ReceiverList ¶
type ReceiverList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []Receiver `json:"items"` }
ReceiverList contains a list of Receivers.
func (*ReceiverList) DeepCopy ¶
func (in *ReceiverList) DeepCopy() *ReceiverList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ReceiverList.
func (*ReceiverList) DeepCopyInto ¶
func (in *ReceiverList) DeepCopyInto(out *ReceiverList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ReceiverList) DeepCopyObject ¶
func (in *ReceiverList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ReceiverSpec ¶
type ReceiverSpec struct { // Type of webhook sender, used to determine // the validation procedure and payload deserialization. // +kubebuilder:validation:Enum=generic;generic-hmac;github;gitlab;bitbucket;harbor;dockerhub;quay;gcr;nexus;acr // +required Type string `json:"type"` // Interval at which to reconcile the Receiver with its Secret references. // +kubebuilder:validation:Type=string // +kubebuilder:validation:Pattern="^([0-9]+(\\.[0-9]+)?(ms|s|m|h))+$" // +optional Interval *metav1.Duration `json:"interval,omitempty"` // Events specifies the list of event types to handle, // e.g. 'push' for GitHub or 'Push Hook' for GitLab. // +optional Events []string `json:"events"` // A list of resources to be notified about changes. // +required Resources []v1.CrossNamespaceObjectReference `json:"resources"` // SecretRef specifies the Secret containing the token used // to validate the payload authenticity. // +required SecretRef meta.LocalObjectReference `json:"secretRef,omitempty"` // Suspend tells the controller to suspend subsequent // events handling for this receiver. // +optional Suspend bool `json:"suspend,omitempty"` }
ReceiverSpec defines the desired state of the Receiver.
func (*ReceiverSpec) DeepCopy ¶
func (in *ReceiverSpec) DeepCopy() *ReceiverSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ReceiverSpec.
func (*ReceiverSpec) DeepCopyInto ¶
func (in *ReceiverSpec) DeepCopyInto(out *ReceiverSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ReceiverStatus ¶
type ReceiverStatus struct { meta.ReconcileRequestStatus `json:",inline"` // Conditions holds the conditions for the Receiver. // +optional Conditions []metav1.Condition `json:"conditions,omitempty"` // URL is the generated incoming webhook address in the format // of '/hook/sha256sum(token+name+namespace)'. // Deprecated: Replaced by WebhookPath. // +optional URL string `json:"url,omitempty"` // WebhookPath is the generated incoming webhook address in the format // of '/hook/sha256sum(token+name+namespace)'. // +optional WebhookPath string `json:"webhookPath,omitempty"` // ObservedGeneration is the last observed generation of the Receiver object. // +optional ObservedGeneration int64 `json:"observedGeneration,omitempty"` }
ReceiverStatus defines the observed state of the Receiver.
func (*ReceiverStatus) DeepCopy ¶
func (in *ReceiverStatus) DeepCopy() *ReceiverStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ReceiverStatus.
func (*ReceiverStatus) DeepCopyInto ¶
func (in *ReceiverStatus) DeepCopyInto(out *ReceiverStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.