mirror of
https://github.com/grafana/grafana.git
synced 2025-02-25 18:55:37 -06:00
* Introduce new models RoutingTree, RouteDefaults and Route and api-server to serve them that is backed by provisioning notification policy service. * update method UpdatePolicyTree of notification policy service to return route and new version * declare new actions alert.notifications.routes:read and alert.notifications.routes:write and two corresponding fixed roles. --------- Co-authored-by: Tom Ratcliffe <tom.ratcliffe@grafana.com> Co-authored-by: Matthew Jacobson <matthew.jacobson@grafana.com>
203 lines
9.3 KiB
Go
203 lines
9.3 KiB
Go
// SPDX-License-Identifier: AGPL-3.0-only
|
|
|
|
// Code generated by applyconfiguration-gen. DO NOT EDIT.
|
|
|
|
package v0alpha1
|
|
|
|
import (
|
|
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
|
types "k8s.io/apimachinery/pkg/types"
|
|
v1 "k8s.io/client-go/applyconfigurations/meta/v1"
|
|
)
|
|
|
|
// RoutingTreeApplyConfiguration represents a declarative configuration of the RoutingTree type for use
|
|
// with apply.
|
|
type RoutingTreeApplyConfiguration struct {
|
|
v1.TypeMetaApplyConfiguration `json:",inline"`
|
|
*v1.ObjectMetaApplyConfiguration `json:"metadata,omitempty"`
|
|
Spec *RoutingTreeSpecApplyConfiguration `json:"spec,omitempty"`
|
|
}
|
|
|
|
// RoutingTree constructs a declarative configuration of the RoutingTree type for use with
|
|
// apply.
|
|
func RoutingTree(name, namespace string) *RoutingTreeApplyConfiguration {
|
|
b := &RoutingTreeApplyConfiguration{}
|
|
b.WithName(name)
|
|
b.WithNamespace(namespace)
|
|
b.WithKind("RoutingTree")
|
|
b.WithAPIVersion("notifications.alerting.grafana.app/v0alpha1")
|
|
return b
|
|
}
|
|
|
|
// WithKind sets the Kind field in the declarative configuration to the given value
|
|
// and returns the receiver, so that objects can be built by chaining "With" function invocations.
|
|
// If called multiple times, the Kind field is set to the value of the last call.
|
|
func (b *RoutingTreeApplyConfiguration) WithKind(value string) *RoutingTreeApplyConfiguration {
|
|
b.Kind = &value
|
|
return b
|
|
}
|
|
|
|
// WithAPIVersion sets the APIVersion field in the declarative configuration to the given value
|
|
// and returns the receiver, so that objects can be built by chaining "With" function invocations.
|
|
// If called multiple times, the APIVersion field is set to the value of the last call.
|
|
func (b *RoutingTreeApplyConfiguration) WithAPIVersion(value string) *RoutingTreeApplyConfiguration {
|
|
b.APIVersion = &value
|
|
return b
|
|
}
|
|
|
|
// WithName sets the Name field in the declarative configuration to the given value
|
|
// and returns the receiver, so that objects can be built by chaining "With" function invocations.
|
|
// If called multiple times, the Name field is set to the value of the last call.
|
|
func (b *RoutingTreeApplyConfiguration) WithName(value string) *RoutingTreeApplyConfiguration {
|
|
b.ensureObjectMetaApplyConfigurationExists()
|
|
b.Name = &value
|
|
return b
|
|
}
|
|
|
|
// WithGenerateName sets the GenerateName field in the declarative configuration to the given value
|
|
// and returns the receiver, so that objects can be built by chaining "With" function invocations.
|
|
// If called multiple times, the GenerateName field is set to the value of the last call.
|
|
func (b *RoutingTreeApplyConfiguration) WithGenerateName(value string) *RoutingTreeApplyConfiguration {
|
|
b.ensureObjectMetaApplyConfigurationExists()
|
|
b.GenerateName = &value
|
|
return b
|
|
}
|
|
|
|
// WithNamespace sets the Namespace field in the declarative configuration to the given value
|
|
// and returns the receiver, so that objects can be built by chaining "With" function invocations.
|
|
// If called multiple times, the Namespace field is set to the value of the last call.
|
|
func (b *RoutingTreeApplyConfiguration) WithNamespace(value string) *RoutingTreeApplyConfiguration {
|
|
b.ensureObjectMetaApplyConfigurationExists()
|
|
b.Namespace = &value
|
|
return b
|
|
}
|
|
|
|
// WithUID sets the UID field in the declarative configuration to the given value
|
|
// and returns the receiver, so that objects can be built by chaining "With" function invocations.
|
|
// If called multiple times, the UID field is set to the value of the last call.
|
|
func (b *RoutingTreeApplyConfiguration) WithUID(value types.UID) *RoutingTreeApplyConfiguration {
|
|
b.ensureObjectMetaApplyConfigurationExists()
|
|
b.UID = &value
|
|
return b
|
|
}
|
|
|
|
// WithResourceVersion sets the ResourceVersion field in the declarative configuration to the given value
|
|
// and returns the receiver, so that objects can be built by chaining "With" function invocations.
|
|
// If called multiple times, the ResourceVersion field is set to the value of the last call.
|
|
func (b *RoutingTreeApplyConfiguration) WithResourceVersion(value string) *RoutingTreeApplyConfiguration {
|
|
b.ensureObjectMetaApplyConfigurationExists()
|
|
b.ResourceVersion = &value
|
|
return b
|
|
}
|
|
|
|
// WithGeneration sets the Generation field in the declarative configuration to the given value
|
|
// and returns the receiver, so that objects can be built by chaining "With" function invocations.
|
|
// If called multiple times, the Generation field is set to the value of the last call.
|
|
func (b *RoutingTreeApplyConfiguration) WithGeneration(value int64) *RoutingTreeApplyConfiguration {
|
|
b.ensureObjectMetaApplyConfigurationExists()
|
|
b.Generation = &value
|
|
return b
|
|
}
|
|
|
|
// WithCreationTimestamp sets the CreationTimestamp field in the declarative configuration to the given value
|
|
// and returns the receiver, so that objects can be built by chaining "With" function invocations.
|
|
// If called multiple times, the CreationTimestamp field is set to the value of the last call.
|
|
func (b *RoutingTreeApplyConfiguration) WithCreationTimestamp(value metav1.Time) *RoutingTreeApplyConfiguration {
|
|
b.ensureObjectMetaApplyConfigurationExists()
|
|
b.CreationTimestamp = &value
|
|
return b
|
|
}
|
|
|
|
// WithDeletionTimestamp sets the DeletionTimestamp field in the declarative configuration to the given value
|
|
// and returns the receiver, so that objects can be built by chaining "With" function invocations.
|
|
// If called multiple times, the DeletionTimestamp field is set to the value of the last call.
|
|
func (b *RoutingTreeApplyConfiguration) WithDeletionTimestamp(value metav1.Time) *RoutingTreeApplyConfiguration {
|
|
b.ensureObjectMetaApplyConfigurationExists()
|
|
b.DeletionTimestamp = &value
|
|
return b
|
|
}
|
|
|
|
// WithDeletionGracePeriodSeconds sets the DeletionGracePeriodSeconds field in the declarative configuration to the given value
|
|
// and returns the receiver, so that objects can be built by chaining "With" function invocations.
|
|
// If called multiple times, the DeletionGracePeriodSeconds field is set to the value of the last call.
|
|
func (b *RoutingTreeApplyConfiguration) WithDeletionGracePeriodSeconds(value int64) *RoutingTreeApplyConfiguration {
|
|
b.ensureObjectMetaApplyConfigurationExists()
|
|
b.DeletionGracePeriodSeconds = &value
|
|
return b
|
|
}
|
|
|
|
// WithLabels puts the entries into the Labels field in the declarative configuration
|
|
// and returns the receiver, so that objects can be build by chaining "With" function invocations.
|
|
// If called multiple times, the entries provided by each call will be put on the Labels field,
|
|
// overwriting an existing map entries in Labels field with the same key.
|
|
func (b *RoutingTreeApplyConfiguration) WithLabels(entries map[string]string) *RoutingTreeApplyConfiguration {
|
|
b.ensureObjectMetaApplyConfigurationExists()
|
|
if b.Labels == nil && len(entries) > 0 {
|
|
b.Labels = make(map[string]string, len(entries))
|
|
}
|
|
for k, v := range entries {
|
|
b.Labels[k] = v
|
|
}
|
|
return b
|
|
}
|
|
|
|
// WithAnnotations puts the entries into the Annotations field in the declarative configuration
|
|
// and returns the receiver, so that objects can be build by chaining "With" function invocations.
|
|
// If called multiple times, the entries provided by each call will be put on the Annotations field,
|
|
// overwriting an existing map entries in Annotations field with the same key.
|
|
func (b *RoutingTreeApplyConfiguration) WithAnnotations(entries map[string]string) *RoutingTreeApplyConfiguration {
|
|
b.ensureObjectMetaApplyConfigurationExists()
|
|
if b.Annotations == nil && len(entries) > 0 {
|
|
b.Annotations = make(map[string]string, len(entries))
|
|
}
|
|
for k, v := range entries {
|
|
b.Annotations[k] = v
|
|
}
|
|
return b
|
|
}
|
|
|
|
// WithOwnerReferences adds the given value to the OwnerReferences field in the declarative configuration
|
|
// and returns the receiver, so that objects can be build by chaining "With" function invocations.
|
|
// If called multiple times, values provided by each call will be appended to the OwnerReferences field.
|
|
func (b *RoutingTreeApplyConfiguration) WithOwnerReferences(values ...*v1.OwnerReferenceApplyConfiguration) *RoutingTreeApplyConfiguration {
|
|
b.ensureObjectMetaApplyConfigurationExists()
|
|
for i := range values {
|
|
if values[i] == nil {
|
|
panic("nil value passed to WithOwnerReferences")
|
|
}
|
|
b.OwnerReferences = append(b.OwnerReferences, *values[i])
|
|
}
|
|
return b
|
|
}
|
|
|
|
// WithFinalizers adds the given value to the Finalizers field in the declarative configuration
|
|
// and returns the receiver, so that objects can be build by chaining "With" function invocations.
|
|
// If called multiple times, values provided by each call will be appended to the Finalizers field.
|
|
func (b *RoutingTreeApplyConfiguration) WithFinalizers(values ...string) *RoutingTreeApplyConfiguration {
|
|
b.ensureObjectMetaApplyConfigurationExists()
|
|
for i := range values {
|
|
b.Finalizers = append(b.Finalizers, values[i])
|
|
}
|
|
return b
|
|
}
|
|
|
|
func (b *RoutingTreeApplyConfiguration) ensureObjectMetaApplyConfigurationExists() {
|
|
if b.ObjectMetaApplyConfiguration == nil {
|
|
b.ObjectMetaApplyConfiguration = &v1.ObjectMetaApplyConfiguration{}
|
|
}
|
|
}
|
|
|
|
// WithSpec sets the Spec field in the declarative configuration to the given value
|
|
// and returns the receiver, so that objects can be built by chaining "With" function invocations.
|
|
// If called multiple times, the Spec field is set to the value of the last call.
|
|
func (b *RoutingTreeApplyConfiguration) WithSpec(value *RoutingTreeSpecApplyConfiguration) *RoutingTreeApplyConfiguration {
|
|
b.Spec = value
|
|
return b
|
|
}
|
|
|
|
// GetName retrieves the value of the Name field in the declarative configuration.
|
|
func (b *RoutingTreeApplyConfiguration) GetName() *string {
|
|
b.ensureObjectMetaApplyConfigurationExists()
|
|
return b.Name
|
|
}
|