v1alpha1

package
v0.0.0-...-425e462 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 21, 2019 License: Apache-2.0 Imports: 18 Imported by: 0

Documentation

Overview

Package v1alpha1 is the v1alpha1 version of the API. +groupName=monitoring.appscode.com

Index

Constants

View Source
const (
	ResourceKindClusterAlert     = "ClusterAlert"
	ResourcePluralClusterAlert   = "clusteralerts"
	ResourceSingularClusterAlert = "clusteralert"
)
View Source
const (
	CheckPodStatus = "pod-status"
	CheckPodVolume = "pod-volume"
	CheckPodExec   = "pod-exec"
)
View Source
const (
	CheckNodeVolume = "node-volume"
	CheckNodeStatus = "node-status"
)
View Source
const (
	CheckComponentStatus = "component-status"
	CheckJsonPath        = "json-path"
	CheckNodeExists      = "node-exists"
	CheckPodExists       = "pod-exists"
	CheckEvent           = "event"
	CheckCACert          = "ca-cert"
)
View Source
const (
	ResourceKindIncident     = "Incident"
	ResourcePluralIncident   = "incidents"
	ResourceSingularIncident = "incident"
)
View Source
const (
	LabelKeyAlert            = "monitoring.appscode.com/alert"
	LabelKeyAlertType        = "monitoring.appscode.com/alert-type"
	LabelKeyObjectName       = "monitoring.appscode.com/object-name"
	LabelKeyProblemRecovered = "monitoring.appscode.com/recovered"
)
View Source
const (
	ResourceKindNodeAlert     = "NodeAlert"
	ResourcePluralNodeAlert   = "nodealerts"
	ResourceSingularNodeAlert = "nodealert"
)
View Source
const (
	ResourceKindSearchlightPlugin     = "SearchlightPlugin"
	ResourcePluralSearchlightPlugin   = "searchlightplugins"
	ResourceSingularSearchlightPlugin = "searchlightplugin"
)
View Source
const (
	ResourceKindPodAlert     = "PodAlert"
	ResourcePluralPodAlert   = "podalerts"
	ResourceSingularPodAlert = "podalert"
)
View Source
const (
	AnnotationKeyAlerts = "monitoring.appscode.com/alerts"
)

Variables

View Source
var (
	PodCommands     = &Registry{reg: map[string]IcingaCommand{}}
	NodeCommands    = &Registry{reg: map[string]IcingaCommand{}}
	ClusterCommands = &Registry{reg: map[string]IcingaCommand{}}
)
View Source
var (
	// TODO: move SchemeBuilder with zz_generated.deepcopy.go to k8s.io/api.
	// localSchemeBuilder and AddToScheme will stay in k8s.io/kubernetes.
	SchemeBuilder runtime.SchemeBuilder

	AddToScheme = localSchemeBuilder.AddToScheme
)
View Source
var (
	EnableStatusSubresource bool
)
View Source
var SchemeGroupVersion = schema.GroupVersion{Group: monitoring.GroupName, Version: "v1alpha1"}

Functions

func Resource

func Resource(resource string) schema.GroupResource

Resource takes an unqualified resource and returns a Group qualified GroupResource

Types

type Alert

type Alert interface {
	GetName() string
	GetNamespace() string
	Command() string
	GetCheckInterval() time.Duration
	GetAlertInterval() time.Duration
	IsValid(kc kubernetes.Interface) error
	GetNotifierSecretName() string
	GetReceivers() []Receiver
	ObjectReference() *core.ObjectReference
}

type ClusterAlert

type ClusterAlert struct {
	metav1.TypeMeta `json:",inline"`
	// Standard object's metadata.
	// More info: http://releases.k8s.io/release-1.2/docs/devel/api-conventions.md#metadata
	metav1.ObjectMeta `json:"metadata,omitempty"`

	// Spec is the desired state of the ClusterAlert.
	// More info: http://releases.k8s.io/release-1.2/docs/devel/api-conventions.md#spec-and-status
	Spec ClusterAlertSpec `json:"spec,omitempty"`
}

func (ClusterAlert) Command

func (a ClusterAlert) Command() string

func (ClusterAlert) CustomResourceDefinition

func (a ClusterAlert) CustomResourceDefinition() *apiextensions.CustomResourceDefinition

func (*ClusterAlert) DeepCopy

func (in *ClusterAlert) DeepCopy() *ClusterAlert

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterAlert.

func (*ClusterAlert) DeepCopyInto

func (in *ClusterAlert) DeepCopyInto(out *ClusterAlert)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*ClusterAlert) DeepCopyObject

func (in *ClusterAlert) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (ClusterAlert) GetAlertInterval

func (a ClusterAlert) GetAlertInterval() time.Duration

func (ClusterAlert) GetCheckInterval

func (a ClusterAlert) GetCheckInterval() time.Duration

func (ClusterAlert) GetName

func (a ClusterAlert) GetName() string

func (ClusterAlert) GetNamespace

func (a ClusterAlert) GetNamespace() string

func (ClusterAlert) GetNotifierSecretName

func (a ClusterAlert) GetNotifierSecretName() string

func (ClusterAlert) GetReceivers

func (a ClusterAlert) GetReceivers() []Receiver

func (ClusterAlert) IsValid

func (a ClusterAlert) IsValid(kc kubernetes.Interface) error

func (ClusterAlert) ObjectReference

func (a ClusterAlert) ObjectReference() *core.ObjectReference

type ClusterAlertList

type ClusterAlertList struct {
	metav1.TypeMeta `json:",inline"`
	// Standard object's metadata.
	// More info: http://releases.k8s.io/release-1.2/docs/devel/api-conventions.md#metadata
	metav1.ListMeta `json:"metadata,omitempty"`

	// Items is the list of ClusterAlert.
	Items []ClusterAlert `json:"items"`
}

ClusterAlertList is a collection of ClusterAlert.

func (*ClusterAlertList) DeepCopy

func (in *ClusterAlertList) DeepCopy() *ClusterAlertList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterAlertList.

func (*ClusterAlertList) DeepCopyInto

func (in *ClusterAlertList) DeepCopyInto(out *ClusterAlertList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*ClusterAlertList) DeepCopyObject

func (in *ClusterAlertList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type ClusterAlertSpec

type ClusterAlertSpec struct {
	// Icinga CheckCommand name
	Check string `json:"check,omitempty"`

	// How frequently Icinga Service will be checked
	CheckInterval metav1.Duration `json:"checkInterval,omitempty"`

	// How frequently notifications will be send
	AlertInterval metav1.Duration `json:"alertInterval,omitempty"`

	// Secret containing notifier credentials
	NotifierSecretName string `json:"notifierSecretName,omitempty"`

	// NotifierParams contains information to send notifications for Incident
	// State, UserUid, Method
	Receivers []Receiver `json:"receivers,omitempty"`

	// Vars contains Icinga Service variables to be used in CheckCommand
	Vars map[string]string `json:"vars,omitempty"`

	// Indicates that Check is paused
	// Icinga Services are removed
	Paused bool `json:"paused,omitempty"`
}

ClusterAlertSpec describes the ClusterAlert the user wishes to create.

func (*ClusterAlertSpec) DeepCopy

func (in *ClusterAlertSpec) DeepCopy() *ClusterAlertSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterAlertSpec.

func (*ClusterAlertSpec) DeepCopyInto

func (in *ClusterAlertSpec) DeepCopyInto(out *ClusterAlertSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type IcingaCommand

type IcingaCommand struct {
	Name   string
	Vars   *PluginVars
	States []string
}

+k8s:deepcopy-gen=false

type Incident

type Incident struct {
	metav1.TypeMeta `json:",inline"`
	// Standard object's metadata.
	// More info: http://releases.k8s.io/release-1.2/docs/devel/api-conventions.md#metadata
	metav1.ObjectMeta `json:"metadata,omitempty"`

	// Derived information about the incident.
	// +optional
	Status IncidentStatus `json:"status,omitempty"`
}

func (Incident) CustomResourceDefinition

func (a Incident) CustomResourceDefinition() *apiextensions.CustomResourceDefinition

func (*Incident) DeepCopy

func (in *Incident) DeepCopy() *Incident

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Incident.

func (*Incident) DeepCopyInto

func (in *Incident) DeepCopyInto(out *Incident)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*Incident) DeepCopyObject

func (in *Incident) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type IncidentList

type IncidentList struct {
	metav1.TypeMeta `json:",inline"`
	// Standard object's metadata.
	// More info: http://releases.k8s.io/release-1.2/docs/devel/api-conventions.md#metadata
	metav1.ListMeta `json:"metadata,omitempty"`

	// Items is the list of Incident.
	Items []Incident `json:"items"`
}

IncidentList is a collection of Incident.

func (*IncidentList) DeepCopy

func (in *IncidentList) DeepCopy() *IncidentList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IncidentList.

func (*IncidentList) DeepCopyInto

func (in *IncidentList) DeepCopyInto(out *IncidentList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*IncidentList) DeepCopyObject

func (in *IncidentList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type IncidentNotification

type IncidentNotification struct {
	// incident notification type.
	Type IncidentNotificationType `json:"type"`
	// brief output of check command for the incident
	// +optional
	CheckOutput string `json:"checkOutput"`
	// name of user making comment
	// +optional
	Author *string `json:"author,omitempty"`
	// comment made by user
	// +optional
	Comment *string `json:"comment,omitempty"`
	// The time at which this notification was first recorded. (Time of server receipt is in TypeMeta.)
	// +optional
	FirstTimestamp metav1.Time `json:"firstTimestamp,omitempty"`
	// The time at which the most recent occurrence of this notification was recorded.
	// +optional
	LastTimestamp metav1.Time `json:"lastTimestamp,omitempty"`
	// state of incident, such as Critical, Warning, OK, Unknown
	LastState string `json:"state"`
}

func (*IncidentNotification) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IncidentNotification.

func (*IncidentNotification) DeepCopyInto

func (in *IncidentNotification) DeepCopyInto(out *IncidentNotification)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type IncidentNotificationType

type IncidentNotificationType string
const (
	NotificationProblem         IncidentNotificationType = "Problem"
	NotificationAcknowledgement IncidentNotificationType = "Acknowledgement"
	NotificationRecovery        IncidentNotificationType = "Recovery"
	NotificationCustom          IncidentNotificationType = "Custom"
)

These are the possible notifications for an incident.

func AlertType

func AlertType(t string) IncidentNotificationType

type IncidentStatus

type IncidentStatus struct {
	// Type of last notification, such as problem, acknowledgement, recovery or custom
	LastNotificationType IncidentNotificationType `json:"lastNotificationType"`

	// Notifications for the incident, such as problem or acknowledgement.
	// +optional
	Notifications []IncidentNotification `json:"notifications,omitempty"`
}

func (*IncidentStatus) DeepCopy

func (in *IncidentStatus) DeepCopy() *IncidentStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IncidentStatus.

func (*IncidentStatus) DeepCopyInto

func (in *IncidentStatus) DeepCopyInto(out *IncidentStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NodeAlert

type NodeAlert struct {
	metav1.TypeMeta `json:",inline"`
	// Standard object's metadata.
	// More info: http://releases.k8s.io/release-1.2/docs/devel/api-conventions.md#metadata
	metav1.ObjectMeta `json:"metadata,omitempty"`

	// Spec is the desired state of the NodeAlert.
	// More info: http://releases.k8s.io/release-1.2/docs/devel/api-conventions.md#spec-and-status
	Spec NodeAlertSpec `json:"spec,omitempty"`
}

func (NodeAlert) Command

func (a NodeAlert) Command() string

func (NodeAlert) CustomResourceDefinition

func (a NodeAlert) CustomResourceDefinition() *apiextensions.CustomResourceDefinition

func (*NodeAlert) DeepCopy

func (in *NodeAlert) DeepCopy() *NodeAlert

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeAlert.

func (*NodeAlert) DeepCopyInto

func (in *NodeAlert) DeepCopyInto(out *NodeAlert)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*NodeAlert) DeepCopyObject

func (in *NodeAlert) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (NodeAlert) GetAlertInterval

func (a NodeAlert) GetAlertInterval() time.Duration

func (NodeAlert) GetCheckInterval

func (a NodeAlert) GetCheckInterval() time.Duration

func (NodeAlert) GetName

func (a NodeAlert) GetName() string

func (NodeAlert) GetNamespace

func (a NodeAlert) GetNamespace() string

func (NodeAlert) GetNotifierSecretName

func (a NodeAlert) GetNotifierSecretName() string

func (NodeAlert) GetReceivers

func (a NodeAlert) GetReceivers() []Receiver

func (NodeAlert) IsValid

func (a NodeAlert) IsValid(kc kubernetes.Interface) error

func (NodeAlert) ObjectReference

func (a NodeAlert) ObjectReference() *core.ObjectReference

type NodeAlertList

type NodeAlertList struct {
	metav1.TypeMeta `json:",inline"`
	// Standard object's metadata.
	// More info: http://releases.k8s.io/release-1.2/docs/devel/api-conventions.md#metadata
	metav1.ListMeta `json:"metadata,omitempty"`

	// Items is the list of NodeAlert.
	Items []NodeAlert `json:"items"`
}

NodeAlertList is a collection of NodeAlert.

func (*NodeAlertList) DeepCopy

func (in *NodeAlertList) DeepCopy() *NodeAlertList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeAlertList.

func (*NodeAlertList) DeepCopyInto

func (in *NodeAlertList) DeepCopyInto(out *NodeAlertList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*NodeAlertList) DeepCopyObject

func (in *NodeAlertList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type NodeAlertSpec

type NodeAlertSpec struct {
	Selector map[string]string `json:"selector,omitempty"`

	NodeName *string `json:"nodeName,omitempty"`

	// Icinga CheckCommand name
	Check string `json:"check,omitempty"`

	// How frequently Icinga Service will be checked
	CheckInterval metav1.Duration `json:"checkInterval,omitempty"`

	// How frequently notifications will be send
	AlertInterval metav1.Duration `json:"alertInterval,omitempty"`

	// Secret containing notifier credentials
	NotifierSecretName string `json:"notifierSecretName,omitempty"`

	// NotifierParams contains information to send notifications for Incident
	// State, UserUid, Method
	Receivers []Receiver `json:"receivers,omitempty"`

	// Vars contains Icinga Service variables to be used in CheckCommand
	Vars map[string]string `json:"vars,omitempty"`

	// Indicates that Check is paused
	// Icinga Services are removed
	Paused bool `json:"paused,omitempty"`
}

NodeAlertSpec describes the NodeAlert the user wishes to create.

func (*NodeAlertSpec) DeepCopy

func (in *NodeAlertSpec) DeepCopy() *NodeAlertSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeAlertSpec.

func (*NodeAlertSpec) DeepCopyInto

func (in *NodeAlertSpec) DeepCopyInto(out *NodeAlertSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type PluginArguments

type PluginArguments struct {
	Vars *PluginVars       `json:"vars,omitempty"`
	Host map[string]string `json:"host,omitempty"`
}

func (*PluginArguments) DeepCopy

func (in *PluginArguments) DeepCopy() *PluginArguments

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PluginArguments.

func (*PluginArguments) DeepCopyInto

func (in *PluginArguments) DeepCopyInto(out *PluginArguments)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type PluginVarField

type PluginVarField struct {
	Description string  `json:"description,omitempty"`
	Type        VarType `json:"type"`
}

func (*PluginVarField) DeepCopy

func (in *PluginVarField) DeepCopy() *PluginVarField

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PluginVarField.

func (*PluginVarField) DeepCopyInto

func (in *PluginVarField) DeepCopyInto(out *PluginVarField)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type PluginVars

type PluginVars struct {
	Fields   map[string]PluginVarField `json:"fields"`
	Required []string                  `json:"required,omitempty"`
}

func (*PluginVars) DeepCopy

func (in *PluginVars) DeepCopy() *PluginVars

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PluginVars.

func (*PluginVars) DeepCopyInto

func (in *PluginVars) DeepCopyInto(out *PluginVars)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type PodAlert

type PodAlert struct {
	metav1.TypeMeta `json:",inline"`
	// Standard object's metadata.
	// More info: http://releases.k8s.io/release-1.2/docs/devel/api-conventions.md#metadata
	metav1.ObjectMeta `json:"metadata,omitempty"`

	// Spec is the desired state of the PodAlert.
	// More info: http://releases.k8s.io/release-1.2/docs/devel/api-conventions.md#spec-and-status
	Spec PodAlertSpec `json:"spec,omitempty"`
}

func (PodAlert) Command

func (a PodAlert) Command() string

func (PodAlert) CustomResourceDefinition

func (a PodAlert) CustomResourceDefinition() *apiextensions.CustomResourceDefinition

func (*PodAlert) DeepCopy

func (in *PodAlert) DeepCopy() *PodAlert

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PodAlert.

func (*PodAlert) DeepCopyInto

func (in *PodAlert) DeepCopyInto(out *PodAlert)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*PodAlert) DeepCopyObject

func (in *PodAlert) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (PodAlert) GetAlertInterval

func (a PodAlert) GetAlertInterval() time.Duration

func (PodAlert) GetCheckInterval

func (a PodAlert) GetCheckInterval() time.Duration

func (PodAlert) GetName

func (a PodAlert) GetName() string

func (PodAlert) GetNamespace

func (a PodAlert) GetNamespace() string

func (PodAlert) GetNotifierSecretName

func (a PodAlert) GetNotifierSecretName() string

func (PodAlert) GetReceivers

func (a PodAlert) GetReceivers() []Receiver

func (PodAlert) IsValid

func (a PodAlert) IsValid(kc kubernetes.Interface) error

func (PodAlert) ObjectReference

func (a PodAlert) ObjectReference() *core.ObjectReference

type PodAlertList

type PodAlertList struct {
	metav1.TypeMeta `json:",inline"`
	// Standard object's metadata.
	// More info: http://releases.k8s.io/release-1.2/docs/devel/api-conventions.md#metadata
	metav1.ListMeta `json:"metadata,omitempty"`

	// Items is the list of PodAlert.
	Items []PodAlert `json:"items"`
}

PodAlertList is a collection of PodAlert.

func (*PodAlertList) DeepCopy

func (in *PodAlertList) DeepCopy() *PodAlertList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PodAlertList.

func (*PodAlertList) DeepCopyInto

func (in *PodAlertList) DeepCopyInto(out *PodAlertList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*PodAlertList) DeepCopyObject

func (in *PodAlertList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type PodAlertSpec

type PodAlertSpec struct {
	Selector *metav1.LabelSelector `json:"selector,omitempty"`

	PodName *string `json:"podName,omitempty"`

	// Icinga CheckCommand name
	Check string `json:"check,omitempty"`

	// How frequently Icinga Service will be checked
	CheckInterval metav1.Duration `json:"checkInterval,omitempty"`

	// How frequently notifications will be send
	AlertInterval metav1.Duration `json:"alertInterval,omitempty"`

	// Secret containing notifier credentials
	NotifierSecretName string `json:"notifierSecretName,omitempty"`

	// NotifierParams contains information to send notifications for Incident
	// State, UserUid, Method
	Receivers []Receiver `json:"receivers,omitempty"`

	// Vars contains Icinga Service variables to be used in CheckCommand
	Vars map[string]string `json:"vars,omitempty"`

	// Indicates that Check is paused
	// Icinga Services are removed
	Paused bool `json:"paused,omitempty"`
}

PodAlertSpec describes the PodAlert the user wishes to create.

func (*PodAlertSpec) DeepCopy

func (in *PodAlertSpec) DeepCopy() *PodAlertSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PodAlertSpec.

func (*PodAlertSpec) DeepCopyInto

func (in *PodAlertSpec) DeepCopyInto(out *PodAlertSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type Receiver

type Receiver struct {
	// For which state notification will be sent
	State string `json:"state,omitempty"`

	// To whom notification will be sent
	To []string `json:"to,omitempty"`

	// How this notification will be sent
	Notifier string `json:"notifier,omitempty"`
}

func (*Receiver) DeepCopy

func (in *Receiver) DeepCopy() *Receiver

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Receiver.

func (*Receiver) DeepCopyInto

func (in *Receiver) DeepCopyInto(out *Receiver)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type Registry

type Registry struct {
	// contains filtered or unexported fields
}

+k8s:deepcopy-gen=false

func (*Registry) Delete

func (c *Registry) Delete(cmd string)

func (*Registry) Get

func (c *Registry) Get(cmd string) (IcingaCommand, bool)

func (*Registry) Insert

func (c *Registry) Insert(cmd string, v IcingaCommand)

type SearchlightPlugin

type SearchlightPlugin struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	// Spec is the desired state of the SearchlightPlugin.
	// More info: http://releases.k8s.io/release-1.2/docs/devel/api-conventions.md#spec-and-status
	Spec SearchlightPluginSpec `json:"spec,omitempty"`
}

func (SearchlightPlugin) CustomResourceDefinition

func (a SearchlightPlugin) CustomResourceDefinition() *apiextensions.CustomResourceDefinition

func (*SearchlightPlugin) DeepCopy

func (in *SearchlightPlugin) DeepCopy() *SearchlightPlugin

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SearchlightPlugin.

func (*SearchlightPlugin) DeepCopyInto

func (in *SearchlightPlugin) DeepCopyInto(out *SearchlightPlugin)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*SearchlightPlugin) DeepCopyObject

func (in *SearchlightPlugin) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type SearchlightPluginList

type SearchlightPluginList struct {
	metav1.TypeMeta `json:",inline"`
	// Standard object's metadata.
	// More info: http://releases.k8s.io/release-1.2/docs/devel/api-conventions.md#metadata
	metav1.ListMeta `json:"metadata,omitempty"`

	// Items is the list of SearchlightPlugin.
	Items []SearchlightPlugin `json:"items"`
}

SearchlightPluginList is a collection of SearchlightPlugin.

func (*SearchlightPluginList) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SearchlightPluginList.

func (*SearchlightPluginList) DeepCopyInto

func (in *SearchlightPluginList) DeepCopyInto(out *SearchlightPluginList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*SearchlightPluginList) DeepCopyObject

func (in *SearchlightPluginList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type SearchlightPluginSpec

type SearchlightPluginSpec struct {
	// Check Command
	Command string `json:"command,omitempty"`

	// Webhook provides a reference to the service for this SearchlightPlugin.
	// It must communicate on port 80
	Webhook *WebhookServiceSpec `json:"webhook,omitempty"`

	// AlertKinds refers to supports Alert kinds for this plugin
	AlertKinds []string `json:"alertKinds"`
	// Supported arguments for SearchlightPlugin
	Arguments PluginArguments `json:"arguments,omitempty"`
	// Supported Icinga Service State
	States []string `json:"states"`
}

SearchlightPluginSpec describes the SearchlightPlugin the user wishes to create.

func (*SearchlightPluginSpec) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SearchlightPluginSpec.

func (*SearchlightPluginSpec) DeepCopyInto

func (in *SearchlightPluginSpec) DeepCopyInto(out *SearchlightPluginSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type VarType

type VarType string
const (
	VarTypeInteger  VarType = "integer"
	VarTypeNumber   VarType = "number"
	VarTypeBoolean  VarType = "boolean"
	VarTypeString   VarType = "string"
	VarTypeDuration VarType = "duration"
)

type WebhookServiceSpec

type WebhookServiceSpec struct {
	// Namespace is the namespace of the service
	Namespace string `json:"namespace,omitempty"`
	// Name is the name of the service
	Name string `json:"name"`
}

func (*WebhookServiceSpec) DeepCopy

func (in *WebhookServiceSpec) DeepCopy() *WebhookServiceSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WebhookServiceSpec.

func (*WebhookServiceSpec) DeepCopyInto

func (in *WebhookServiceSpec) DeepCopyInto(out *WebhookServiceSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL