v1beta1

package
v0.0.0-...-9a5d330 Latest Latest
Warning

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

Go to latest
Published: Apr 2, 2021 License: MIT Imports: 14 Imported by: 0

Documentation

Overview

Package v1beta1 is the api spec for objectrocket sensu clusters

+k8s:deepcopy-gen=package +groupName=objectrocket.com

Index

Constants

View Source
const (

	// BackupStorageTypeS3 is the backup storage type for ec2 s3
	BackupStorageTypeS3 BackupStorageType = "S3"
	// AWSSecretCredentialsFileName is the credentials file name
	AWSSecretCredentialsFileName = "credentials"
	// AWSSecretConfigFileName is the secret config name
	AWSSecretConfigFileName = "config"

	// BackupStorageTypeABS is the azure backup storage type
	BackupStorageTypeABS BackupStorageType = "ABS"
	// AzureSecretStorageAccount is the azure secret storage account name
	AzureSecretStorageAccount = "storage-account"
	// AzureSecretStorageKey is the azure secrets storage key
	AzureSecretStorageKey = "storage-key"
)
View Source
const (

	// DefaultSensuVersion is the default sensu version
	DefaultSensuVersion = "5.1.0"
	// DefaultClusterAdminUsername is the default cluster admin username
	DefaultClusterAdminUsername = "admin"
	// DefaultClusterAdminPassword is the default cluster admin password
	DefaultClusterAdminPassword = "P@ssw0rd!"
)
View Source
const (
	SensuClusterResourceKind   = "SensuCluster"
	SensuClusterResourcePlural = "sensuclusters"

	SensuAssetResourceKind   = "SensuAsset"
	SensuAssetResourcePlural = "sensuassets"

	SensuCheckConfigResourceKind   = "SensuCheckConfig"
	SensuCheckConfigResourcePlural = "sensucheckconfigs"

	SensuHandlerResourceKind   = "SensuHandler"
	SensuHandlerResourcePlural = "sensuhandlers"

	SensuEventFilterResourceKind   = "SensuEventFilter"
	SensuEventFilterResourcePlural = "sensueventfilters"

	SensuBackupResourceKind   = "SensuBackup"
	SensuBackupResourcePlural = "sensubackups"

	SensuRestoreResourceKind   = "SensuRestore"
	SensuRestoreResourcePlural = "sensurestores"
)
View Source
const (
	ClusterPhaseNone     ClusterPhase = ""
	ClusterPhaseCreating              = "Creating"
	ClusterPhaseRunning               = "Running"
	ClusterPhaseFailed                = "Failed"

	// See ./doc/user/conditions_and_events.md
	ClusterConditionAvailable  ClusterConditionType = "Available"
	ClusterConditionRecovering                      = "Recovering"
	ClusterConditionScaling                         = "Scaling"
	ClusterConditionUpgrading                       = "Upgrading"
)

Variables

View Source
var (
	SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes)
	AddToScheme   = SchemeBuilder.AddToScheme

	SchemeGroupVersion      = schema.GroupVersion{Group: groupName, Version: "v1beta1"}
	SensuClusterCRDName     = SensuClusterResourcePlural + "." + groupName
	SensuAssetCRDName       = SensuAssetResourcePlural + "." + groupName
	SensuCheckConfigCRDName = SensuCheckConfigResourcePlural + "." + groupName
	SensuHandlerCRDName     = SensuHandlerResourcePlural + "." + groupName
	SensuEventFilterCRDName = SensuEventFilterResourcePlural + "." + groupName
	SensuBackupCRDName      = SensuBackupResourcePlural + "." + groupName
	SensuRestoreCRDName     = SensuRestoreResourcePlural + "." + groupName
)
View Source
var (
	// ErrBackupUnsetRestoreSet is an error specific to backup policy not being set
	// TODO: move validation code into separate package.
	ErrBackupUnsetRestoreSet = errors.New("spec: backup policy must be set if restore policy is set")
)

Functions

func Resource

func Resource(resource string) schema.GroupResource

Resource gets a SensuCluster GroupResource for a specified resource

Types

type ABSBackupSource

type ABSBackupSource struct {
	// Path is the full abs path where the backup is saved.
	// The format of the path must be: "<abs-container-name>/<path-to-backup-file>"
	// e.g: "myabscontainer/etcd.backup"
	Path string `json:"path"`

	// The name of the secret object that stores the Azure storage credential
	ABSSecret string `json:"absSecret"`
}

ABSBackupSource provides the spec how to store backups on ABS.

func (*ABSBackupSource) DeepCopy

func (in *ABSBackupSource) DeepCopy() *ABSBackupSource

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

func (*ABSBackupSource) DeepCopyInto

func (in *ABSBackupSource) DeepCopyInto(out *ABSBackupSource)

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

type ABSRestoreSource

type ABSRestoreSource struct {
	// Path is the full abs path where the backup is saved.
	// The format of the path must be: "<abs-container-name>/<path-to-backup-file>"
	// e.g: "myabscontainer/etcd.backup"
	Path string `json:"path"`

	// The name of the secret object that stores the Azure Blob Storage credential.
	ABSSecret string `json:"absSecret"`
}

func (*ABSRestoreSource) DeepCopy

func (in *ABSRestoreSource) DeepCopy() *ABSRestoreSource

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

func (*ABSRestoreSource) DeepCopyInto

func (in *ABSRestoreSource) DeepCopyInto(out *ABSRestoreSource)

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

type BackupPolicy

type BackupPolicy struct {
	// TimeoutInSecond is the maximal allowed time in second of the entire backup process.
	TimeoutInSecond int64 `json:"timeoutInSecond,omitempty"`
}

BackupPolicy defines backup policy.

func (*BackupPolicy) DeepCopy

func (in *BackupPolicy) DeepCopy() *BackupPolicy

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

func (*BackupPolicy) DeepCopyInto

func (in *BackupPolicy) DeepCopyInto(out *BackupPolicy)

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

type BackupSource

type BackupSource struct {
	// S3 defines the S3 backup source spec.
	S3 *S3BackupSource `json:"s3,omitempty"`
	// ABS defines the ABS backup source spec.
	ABS *ABSBackupSource `json:"abs,omitempty"`
}

BackupSource contains the supported backup sources.

func (*BackupSource) DeepCopy

func (in *BackupSource) DeepCopy() *BackupSource

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

func (*BackupSource) DeepCopyInto

func (in *BackupSource) DeepCopyInto(out *BackupSource)

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

type BackupSpec

type BackupSpec struct {
	// SensuEndpoints specifies the endpoints of an etcd cluster.
	// When multiple endpoints are given, the backup operator retrieves
	// the backup from the endpoint that has the most up-to-date state.
	// The given endpoints must belong to the same etcd cluster.
	EtcdEndpoints []string `json:"etcdEndpoints,omitempty"`
	// StorageType is the etcd backup storage type.
	// We need this field because CRD doesn't support validation against invalid fields
	// and we cannot verify invalid backup storage source.
	StorageType BackupStorageType `json:"storageType"`
	// BackupPolicy configures the backup process.
	BackupPolicy *BackupPolicy `json:"backupPolicy,omitempty"`
	// BackupSource is the backup storage source.
	BackupSource `json:",inline"`
	// ClientTLSSecret is the secret containing the etcd TLS client certs and
	// must contain the following data items:
	// data:
	//    "etcd-client.crt": <pem-encoded-cert>
	//    "etcd-client.key": <pem-encoded-key>
	//    "etcd-client-ca.crt": <pem-encoded-ca-cert>
	ClientTLSSecret string `json:"clientTLSSecret,omitempty"`
}

BackupSpec contains a backup specification for an etcd cluster.

func (*BackupSpec) DeepCopy

func (in *BackupSpec) DeepCopy() *BackupSpec

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

func (*BackupSpec) DeepCopyInto

func (in *BackupSpec) DeepCopyInto(out *BackupSpec)

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

type BackupStatus

type BackupStatus struct {
	// Succeeded indicates if the backup has Succeeded.
	Succeeded bool `json:"succeeded"`
	// Reason indicates the reason for any backup related failures.
	Reason string `json:"Reason,omitempty"`
	// EtcdVersion is the version of the backup etcd server.
	EtcdVersion string `json:"etcdVersion,omitempty"`
	// EtcdRevision is the revision of etcd's KV store where the backup is performed on.
	EtcdRevision int64 `json:"etcdRevision,omitempty"`
}

BackupStatus represents the status of the SensuBackup Custom Resource.

func (*BackupStatus) DeepCopy

func (in *BackupStatus) DeepCopy() *BackupStatus

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

func (*BackupStatus) DeepCopyInto

func (in *BackupStatus) DeepCopyInto(out *BackupStatus)

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

type BackupStorageType

type BackupStorageType string

BackupStorageType is a backup storage type

type ClusterCondition

type ClusterCondition struct {
	// Type of cluster condition.
	Type ClusterConditionType `json:"type"`
	// Status of the condition, one of True, False, Unknown.
	Status v1.ConditionStatus `json:"status"`
	// The last time this condition was updated.
	LastUpdateTime string `json:"lastUpdateTime,omitempty"`
	// Last time the condition transitioned from one status to another.
	LastTransitionTime string `json:"lastTransitionTime,omitempty"`
	// The reason for the condition's last transition.
	Reason string `json:"reason,omitempty"`
	// A human readable message indicating details about the transition.
	Message string `json:"message,omitempty"`
}

ClusterCondition represents one current condition of an sensu cluster. A condition might not show up if it is not happening. For example, if a cluster is not upgrading, the Upgrading condition would not show up. If a cluster is upgrading and encountered a problem that prevents the upgrade, the Upgrading condition's status will would be False and communicate the problem back.

func (*ClusterCondition) DeepCopy

func (in *ClusterCondition) DeepCopy() *ClusterCondition

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

func (*ClusterCondition) DeepCopyInto

func (in *ClusterCondition) DeepCopyInto(out *ClusterCondition)

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

type ClusterConditionType

type ClusterConditionType string

type ClusterPhase

type ClusterPhase string

type ClusterSpec

type ClusterSpec struct {
	// Size is the expected size of the sensu cluster.
	// The sensu-operator will eventually make the size of the running
	// cluster equal to the expected size.
	// It is currently limited to 1.
	Size int `json:"size"`
	// Repository is the name of the repository that hosts
	// sensu container images. It should be direct clone of the repository in official
	// release:
	//   https://github.com/sensu/sensu-go/releases
	// That means, it should have exact same tags and the same meaning for the tags.
	//
	// By default, it is `sensuapp/sensu-go`.
	Repository string `json:"repository,omitempty"`

	// Version is the expected version of the sensu cluster.
	// The sensu-operator will eventually make the sensu cluster version
	// equal to the expected version.
	//
	// Available versions can be found here: https://hub.docker.com/r/sensuapp/sensu-go/tags/
	//
	// If version is not set, default is "2.0.0-alpha".
	Version string `json:"version,omitempty"`

	// Paused is to pause the control of the operator for the sensu cluster.
	Paused bool `json:"paused,omitempty"`

	// Pod defines the policy to create pod for the sensu pod.
	//
	// Updating Pod does not take effect on any existing sensu pods.
	Pod *PodPolicy `json:"pod,omitempty"`

	// sensu cluster TLS configuration
	TLS *TLSPolicy `json:"TLS,omitempty"`

	// sensu cluster admin username
	ClusterAdminUsername string `json:"clusteradminusername,omitempty"`

	// sensu cluster admin password
	ClusterAdminPassword string `json:"clusteradminpassword,omitempty"`
}

ClusterSpec is the cluster specification details

func (*ClusterSpec) DeepCopy

func (in *ClusterSpec) DeepCopy() *ClusterSpec

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

func (*ClusterSpec) DeepCopyInto

func (in *ClusterSpec) DeepCopyInto(out *ClusterSpec)

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

func (*ClusterSpec) Validate

func (c *ClusterSpec) Validate() error

Validate validates the sensu cluster TODO: move this to initializer

type ClusterStatus

type ClusterStatus struct {
	// Phase is the cluster running phase
	Phase  ClusterPhase `json:"phase"`
	Reason string       `json:"reason,omitempty"`

	// ControlPuased indicates the operator pauses the control of the cluster.
	ControlPaused bool `json:"controlPaused,omitempty"`

	// Condition keeps track of all cluster conditions, if they exist.
	Conditions []ClusterCondition `json:"conditions,omitempty"`

	// Size is the current size of the cluster.
	// Currently limited to 1.
	Size int `json:"size"`

	// DashboardServiceName is the LB service for accessing the sensu dashboard.
	DashboardServiceName string `json:"dashboardServiceName,omitempty"`

	// DashboardPort is the port for accessing the sensu dashboard.
	DashboardPort int `json:"dashboardPort,omitempty"`

	// AgentServiceName is the LB service for sensu agents to access the sensu backend.
	AgentServiceName string `json:"agentServiceName,omitempty"`

	// AgentPort is the port for sensu agents to connect to the sensu backend.
	AgentPort int `json:"agentPort,omitempty"`

	// APIServiceName is the LB service for clients to access the sensu API.
	APIServiceName string `json:"apiServiceName,omitempty"`

	// APIPort is the port for sensu clients to connect to the sensu API.
	APIPort int `json:"apiPort,omitempty"`

	// Members are the sensu members in the cluster
	Members MembersStatus `json:"members"`
	// CurrentVersion is the current cluster version
	CurrentVersion string `json:"currentVersion"`
	// TargetVersion is the version the cluster upgrading to.
	// If the cluster is not upgrading, TargetVersion is empty.
	TargetVersion string `json:"targetVersion"`
}

func (*ClusterStatus) ClearCondition

func (cs *ClusterStatus) ClearCondition(t ClusterConditionType)

func (*ClusterStatus) Control

func (cs *ClusterStatus) Control()

func (*ClusterStatus) DeepCopy

func (in *ClusterStatus) DeepCopy() *ClusterStatus

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

func (*ClusterStatus) DeepCopyInto

func (in *ClusterStatus) DeepCopyInto(out *ClusterStatus)

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

func (*ClusterStatus) IsFailed

func (cs *ClusterStatus) IsFailed() bool

func (*ClusterStatus) PauseControl

func (cs *ClusterStatus) PauseControl()

func (*ClusterStatus) SetPhase

func (cs *ClusterStatus) SetPhase(p ClusterPhase)

func (*ClusterStatus) SetReadyCondition

func (cs *ClusterStatus) SetReadyCondition()

func (*ClusterStatus) SetReason

func (cs *ClusterStatus) SetReason(r string)

func (*ClusterStatus) SetRecoveringCondition

func (cs *ClusterStatus) SetRecoveringCondition()

func (*ClusterStatus) SetScalingDownCondition

func (cs *ClusterStatus) SetScalingDownCondition(from, to int)

func (*ClusterStatus) SetScalingUpCondition

func (cs *ClusterStatus) SetScalingUpCondition(from, to int)

func (*ClusterStatus) SetUpgradingCondition

func (cs *ClusterStatus) SetUpgradingCondition(to string)

func (*ClusterStatus) SetVersion

func (cs *ClusterStatus) SetVersion(v string)

func (*ClusterStatus) UpgradeVersionTo

func (cs *ClusterStatus) UpgradeVersionTo(v string)

type HandlerSocket

type HandlerSocket struct {
	Host string `json:"host"`
	Port uint32 `json:"port"`
}

HandlerSocket is the socket description of a sensu handler.

func (*HandlerSocket) DeepCopy

func (in *HandlerSocket) DeepCopy() *HandlerSocket

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

func (*HandlerSocket) DeepCopyInto

func (in *HandlerSocket) DeepCopyInto(out *HandlerSocket)

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

type HookList

type HookList struct {
	// Hooks is the list of hooks for the check hook
	Hooks []string `json:"hooks"`
	// Type indicates the type or response code for the check hook
	Type string `json:"type,omitempty"`
}

HookList is a list of Hooks.

func (*HookList) DeepCopy

func (in *HookList) DeepCopy() *HookList

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

func (*HookList) DeepCopyInto

func (in *HookList) DeepCopyInto(out *HookList)

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

type MemberSecret

type MemberSecret struct {
	// PeerSecret is the secret containing TLS certs used by each etcd member pod
	// for the communication between etcd peers.
	PeerSecret string `json:"peerSecret,omitempty"`
	// ServerSecret is the secret containing TLS certs used by each etcd member pod
	// for the communication between etcd server and its clients.
	ServerSecret string `json:"serverSecret,omitempty"`
}

func (*MemberSecret) DeepCopy

func (in *MemberSecret) DeepCopy() *MemberSecret

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

func (*MemberSecret) DeepCopyInto

func (in *MemberSecret) DeepCopyInto(out *MemberSecret)

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

type MembersStatus

type MembersStatus struct {
	// Ready are the sensu members that are ready to serve requests
	// The member names are the same as the sensu pod names
	Ready []string `json:"ready,omitempty"`
	// Unready are the sensu members not ready to serve requests
	Unready []string `json:"unready,omitempty"`
}

func (*MembersStatus) DeepCopy

func (in *MembersStatus) DeepCopy() *MembersStatus

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

func (*MembersStatus) DeepCopyInto

func (in *MembersStatus) DeepCopyInto(out *MembersStatus)

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

type ObjectMeta

type ObjectMeta struct {
	// Name must be unique within a namespace. Name is primarily intended for creation
	// idempotence and configuration definition.
	Name string `json:"name" yaml:"name"`
	// ClusterName is the sensu cluster name within the kubernetes cluster
	ClusterName string `json:"clusterName" yaml:"clusterName"`
	// Namespace defines a logical grouping of objects within which each object name must
	// be unique.
	Namespace string `json:"namespace" yaml:"namespace"`
	// Map of string keys and values that can be used to organize and categorize
	// (scope and select) objects. May also be used in filters and token
	// substitution.
	// TODO: Link to Sensu documentation.
	// More info: http://kubernetes.io/docs/user-guide/labels
	Labels map[string]string `json:"labels,omitempty" yaml:"labels,omitempty"`
	// Annotations is an unstructured key value map stored with a resource that may be
	// set by external tools to store and retrieve arbitrary metadata. They are not
	// queryable and should be preserved when modifying objects.
	// TODO: Link to Sensu documentation.
	// More info: http://kubernetes.io/docs/user-guide/annotations
	Annotations map[string]string `json:"annotations,omitempty" yaml:"annotations,omitempty" `
}

ObjectMeta is the sensu object metadata

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.

type PodPolicy

type PodPolicy struct {
	// Labels specifies the labels to attach to pods the operator creates for the
	// sensu cluster.
	// "app" and "sensu_*" labels are reserved for the internal use of the sensu operator.
	// Do not overwrite them.
	Labels map[string]string `json:"labels,omitempty"`

	// NodeSelector specifies a map of key-value pairs. For the pod to be eligible
	// to run on a node, the node must have each of the indicated key-value pairs as
	// labels.
	NodeSelector map[string]string `json:"nodeSelector,omitempty"`

	// The scheduling constraints on sensu pods.
	Affinity *v1.Affinity `json:"affinity,omitempty"`
	// **DEPRECATED**. Use Affinity instead.
	AntiAffinity bool `json:"antiAffinity,omitempty"`

	// Resources is the resource requirements for the sensu container.
	// This field cannot be updated once the cluster is created.
	Resources v1.ResourceRequirements `json:"resources,omitempty"`

	// Tolerations specifies the pod's tolerations.
	Tolerations []v1.Toleration `json:"tolerations,omitempty"`

	// List of environment variables to set in the sensu container.
	// This is used to configure etcd in the sensu process. The sensu cluster cannot be created, when
	// bad environement variables are provided. Do not overwrite any flags used to
	// bootstrap the cluster (for example `--initial-cluster` flag).
	// This field cannot be updated.
	SensuEnv []v1.EnvVar `json:"sensuEnv,omitempty"`

	// PersistentVolumeClaimSpec is the spec to describe PVC for the sensu container
	// This field is optional. If no PVC spec, sensu container will use emptyDir as volume
	// Note. This feature is in alpha stage. It is currently only used as non-stable storage,
	// not the stable storage. Future work need to make it used as stable storage.
	PersistentVolumeClaimSpec *v1.PersistentVolumeClaimSpec `json:"persistentVolumeClaimSpec,omitempty"`

	// Annotations specifies the annotations to attach to pods the operator creates for the
	// sensu cluster.
	// The "sensu.version" annotation is reserved for the internal use of the sensu operator.
	Annotations map[string]string `json:"annotations,omitempty"`

	// busybox init container image. default is busybox:1.28.0-glibc
	// busybox:latest uses uclibc which contains a bug that sometimes prevents name resolution
	// More info: https://github.com/docker-library/busybox/issues/27
	BusyboxImage string `json:"busyboxImage,omitempty"`

	// SecurityContext specifies the security context for the entire pod
	// More info: https://kubernetes.io/docs/tasks/configure-pod-container/security-context
	SecurityContext *v1.PodSecurityContext `json:"securityContext,omitempty"`

	// DNSTimeoutInSecond is the maximum allowed time for the init container of the sensu pod to
	// reverse DNS lookup its IP given the hostname.
	// The default is to wait indefinitely and has a vaule of 0.
	DNSTimeoutInSecond int64 `json:"DNSTimeoutInSecond,omitempty"`
}

PodPolicy defines the policy to create pod for the sensu container.

func (*PodPolicy) DeepCopy

func (in *PodPolicy) DeepCopy() *PodPolicy

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

func (*PodPolicy) DeepCopyInto

func (in *PodPolicy) DeepCopyInto(out *PodPolicy)

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

type ProxyRequests

type ProxyRequests struct {
	// EntityAttributes store serialized arbitrary JSON-encoded data to match
	// entities in the registry.
	EntityAttributes []string `json:"entity_attributes"`
	// Splay indicates if proxy check requests should be splayed, published evenly
	// over a window of time.
	Splay bool `json:"splay"`
	// SplayCoverage is the percentage used for proxy check request splay
	// calculation.
	SplayCoverage uint32 `json:"splay_coverage"`
}

A ProxyRequests represents a request to execute a proxy check

func (*ProxyRequests) DeepCopy

func (in *ProxyRequests) DeepCopy() *ProxyRequests

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

func (*ProxyRequests) DeepCopyInto

func (in *ProxyRequests) DeepCopyInto(out *ProxyRequests)

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

type RestoreSource

type RestoreSource struct {
	// S3 tells where on S3 the backup is saved and how to fetch the backup.
	S3 *S3RestoreSource `json:"s3,omitempty"`

	// ABS tells where on ABS the backup is saved and how to fetch the backup.
	ABS *ABSRestoreSource `json:"abs,omitempty"`
}

func (*RestoreSource) DeepCopy

func (in *RestoreSource) DeepCopy() *RestoreSource

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

func (*RestoreSource) DeepCopyInto

func (in *RestoreSource) DeepCopyInto(out *RestoreSource)

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

type RestoreSpec

type RestoreSpec struct {
	// BackupStorageType is the type of the backup storage which is used as RestoreSource.
	BackupStorageType BackupStorageType `json:"backupStorageType"`
	// RestoreSource tells the where to get the backup and restore from.
	RestoreSource `json:",inline"`
	// SensuCluster references an SensuCluster resource whose metadata and spec
	// will be used to create the new restored SensuCluster CR.
	// This reference SensuCluster CR and all its resources will be deleted before the
	// restored SensuCluster CR is created.
	SensuCluster SensuClusterRef `json:"sensuCluster"`
}

RestoreSpec defines how to restore a sensu cluster from existing backup.

func (*RestoreSpec) DeepCopy

func (in *RestoreSpec) DeepCopy() *RestoreSpec

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

func (*RestoreSpec) DeepCopyInto

func (in *RestoreSpec) DeepCopyInto(out *RestoreSpec)

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

type RestoreStatus

type RestoreStatus struct {
	// Succeeded indicates if the backup has Succeeded.
	Succeeded bool `json:"succeeded"`
	// Reason indicates the reason for any backup related failures.
	Reason string `json:"reason,omitempty"`
}

RestoreStatus reports the status of this restore operation.

func (*RestoreStatus) DeepCopy

func (in *RestoreStatus) DeepCopy() *RestoreStatus

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

func (*RestoreStatus) DeepCopyInto

func (in *RestoreStatus) DeepCopyInto(out *RestoreStatus)

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

type S3BackupSource

type S3BackupSource struct {
	// Path is the full s3 path where the backup is saved.
	// The format of the path must be: "<s3-bucket-name>/<path-to-backup-file>"
	// e.g: "mybucket/etcd.backup"
	Path string `json:"path"`

	// The name of the secret object that stores the AWS credential and config files.
	// The file name of the credential MUST be 'credentials'.
	// The file name of the config MUST be 'config'.
	// The profile to use in both files will be 'default'.
	//
	// AWSSecret overwrites the default etcd operator wide AWS credential and config.
	AWSSecret string `json:"awsSecret"`

	// Endpoint if blank points to aws. If specified, can point to s3 compatible object
	// stores.
	Endpoint string `json:"endpoint,omitempty"`
}

S3BackupSource provides the spec how to store backups on S3.

func (*S3BackupSource) DeepCopy

func (in *S3BackupSource) DeepCopy() *S3BackupSource

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

func (*S3BackupSource) DeepCopyInto

func (in *S3BackupSource) DeepCopyInto(out *S3BackupSource)

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

type S3RestoreSource

type S3RestoreSource struct {
	// Path is the full s3 path where the backup is saved.
	// The format of the path must be: "<s3-bucket-name>/<path-to-backup-file>"
	// e.g: "mybucket/etcd.backup"
	Path string `json:"path"`

	// The name of the secret object that stores the AWS credential and config files.
	// The file name of the credential MUST be 'credentials'.
	// The file name of the config MUST be 'config'.
	// The profile to use in both files will be 'default'.
	//
	// AWSSecret overwrites the default sensu operator wide AWS credential and config.
	AWSSecret string `json:"awsSecret"`

	// Endpoint if blank points to aws. If specified, can point to s3 compatible object
	// stores.
	Endpoint string `json:"endpoint"`
}

func (*S3RestoreSource) DeepCopy

func (in *S3RestoreSource) DeepCopy() *S3RestoreSource

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

func (*S3RestoreSource) DeepCopyInto

func (in *S3RestoreSource) DeepCopyInto(out *S3RestoreSource)

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

type SensuAsset

type SensuAsset struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              SensuAssetSpec `json:"spec"`
	// Status is the sensu asset's status
	Status SensuAssetStatus `json:"status"`
}

SensuAsset is the type of sensu assets +genclient +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object +k8s:openapi-gen=true

func (*SensuAsset) DeepCopy

func (in *SensuAsset) DeepCopy() *SensuAsset

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

func (*SensuAsset) DeepCopyInto

func (in *SensuAsset) DeepCopyInto(out *SensuAsset)

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

func (*SensuAsset) DeepCopyObject

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

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

func (SensuAsset) GetCustomResourceValidation

func (a SensuAsset) GetCustomResourceValidation() *k8s_api_extensions_v1beta1.CustomResourceValidation

GetCustomResourceValidation returns the asset's resource validation

func (SensuAsset) ToAPISensuAsset

func (a SensuAsset) ToAPISensuAsset() *sensutypes.Asset

ToAPISensuAsset returns a value of the SensuAsset type from the Sensu API

type SensuAssetList

type SensuAssetList struct {
	metav1.TypeMeta `json:",inline"`
	// Standard list metadata
	// More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []SensuAsset `json:"items"`
}

SensuAssetList is a list of sensu assets.

func (*SensuAssetList) DeepCopy

func (in *SensuAssetList) DeepCopy() *SensuAssetList

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

func (*SensuAssetList) DeepCopyInto

func (in *SensuAssetList) DeepCopyInto(out *SensuAssetList)

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

func (*SensuAssetList) DeepCopyObject

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

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

type SensuAssetSpec

type SensuAssetSpec struct {
	// URL is the location of the asset
	URL string `json:"url,omitempty"`

	// Sha512 is the SHA-512 checksum of the asset
	Sha512 string `json:"sha512,omitempty"`

	// Filters are a collection of sensu queries, used by the system to determine
	// if the asset should be installed. If more than one filter is present the
	// queries are joined by the "AND" operator.
	Filters []string `json:"filters,omitempty"`

	// Organization indicates to which org an asset belongs to
	Organization string `json:"organization,omitempty"`
	// Metadata contains the sensu name, sensu namespace, sensu labels and sensu annotations of the check
	SensuMetadata ObjectMeta `json:"sensuMetadata"`
}

SensuAssetSpec is the specification for a sensu asset +k8s:openapi-gen=true

func (*SensuAssetSpec) DeepCopy

func (in *SensuAssetSpec) DeepCopy() *SensuAssetSpec

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

func (*SensuAssetSpec) DeepCopyInto

func (in *SensuAssetSpec) DeepCopyInto(out *SensuAssetSpec)

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

type SensuAssetStatus

type SensuAssetStatus struct {
	Accepted  bool   `json:"accepted"`
	LastError string `json:"lastError"`
}

SensuAssetStatus is the status of the sensu asset

func (*SensuAssetStatus) DeepCopy

func (in *SensuAssetStatus) DeepCopy() *SensuAssetStatus

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

func (*SensuAssetStatus) DeepCopyInto

func (in *SensuAssetStatus) DeepCopyInto(out *SensuAssetStatus)

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

type SensuBackup

type SensuBackup struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata"`
	Spec              BackupSpec   `json:"spec"`
	Status            BackupStatus `json:"status,omitempty"`
}

SensuBackup represents a Kubernetes SensuBackup Custom Resource.

func (*SensuBackup) DeepCopy

func (in *SensuBackup) DeepCopy() *SensuBackup

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

func (*SensuBackup) DeepCopyInto

func (in *SensuBackup) DeepCopyInto(out *SensuBackup)

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

func (*SensuBackup) DeepCopyObject

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

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

type SensuBackupList

type SensuBackupList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata"`
	Items           []SensuBackup `json:"items"`
}

SensuBackupList is a list of SensuBackup.

func (*SensuBackupList) DeepCopy

func (in *SensuBackupList) DeepCopy() *SensuBackupList

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

func (*SensuBackupList) DeepCopyInto

func (in *SensuBackupList) DeepCopyInto(out *SensuBackupList)

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

func (*SensuBackupList) DeepCopyObject

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

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

type SensuCheckConfig

type SensuCheckConfig struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              SensuCheckConfigSpec   `json:"spec"`
	Status            SensuCheckConfigStatus `json:"status"`
}

SensuCheckConfig is the k8s object associated with a sensu check +genclient +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object +k8s:openapi-gen=true

func (*SensuCheckConfig) DeepCopy

func (in *SensuCheckConfig) DeepCopy() *SensuCheckConfig

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

func (*SensuCheckConfig) DeepCopyInto

func (in *SensuCheckConfig) DeepCopyInto(out *SensuCheckConfig)

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

func (*SensuCheckConfig) DeepCopyObject

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

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

func (SensuCheckConfig) GetCustomResourceValidation

func (c SensuCheckConfig) GetCustomResourceValidation() *k8s_api_extensions_v1beta1.CustomResourceValidation

GetCustomResourceValidation returns the asset's resource validation

func (SensuCheckConfig) ToSensuType

func (c SensuCheckConfig) ToSensuType() *sensu_go_v2.CheckConfig

ToSensuType will convert an objectrocket/v1betata checkconfig into a sensu-go/api/core/v2 checkconfig type

type SensuCheckConfigList

type SensuCheckConfigList struct {
	metav1.TypeMeta `json:",inline"`
	// Standard list metadata
	// More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []SensuCheckConfig `json:"items"`
}

SensuCheckConfigList is a list of CheckConfigs.

func (*SensuCheckConfigList) DeepCopy

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

func (*SensuCheckConfigList) DeepCopyInto

func (in *SensuCheckConfigList) DeepCopyInto(out *SensuCheckConfigList)

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

func (*SensuCheckConfigList) DeepCopyObject

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

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

type SensuCheckConfigSpec

type SensuCheckConfigSpec struct {
	// Command is the command to be executed.
	Command string `json:"command"`
	// Handlers are the event handler for the check (incidents and/or metrics).
	Handlers []string `json:"handlers,omitempty"`
	// HighFlapThreshold is the flap detection high threshold (% state change) for
	// the check. Sensu uses the same flap detection algorithm as Nagios.
	HighFlapThreshold uint32 `json:"highFlapThreshold,omitempty"`
	// Interval is the interval, in seconds, at which the check should be run.
	Interval uint32 `json:"interval,omitempty"`
	// LowFlapThreshold is the flap detection low threshold (% state change) for
	// the check. Sensu uses the same flap detection algorithm as Nagios.
	LowFlapThreshold uint32 `json:"lowFlapThreshold,omitempty"`
	// Publish indicates if check requests are published for the check
	Publish bool `json:"publish,omitempty"`
	// RuntimeAssets are a list of assets required to execute check.
	RuntimeAssets []string `json:"runtimeAssets,omitempty"`
	// Subscriptions is the list of subscribers for the check.
	Subscriptions []string `json:"subscriptions"`
	// ExtendedAttributes store serialized arbitrary JSON-encoded data
	ExtendedAttributes []byte `json:"-"`
	// Sources indicates the name of the entity representing an external resource
	ProxyEntityName string `json:"proxyEntityName,omitempty"`
	// CheckHooks is the list of check hooks for the check
	CheckHooks []HookList `json:"checkHooks,omitempty"`
	// STDIN indicates if the check command accepts JSON via stdin from the agent
	Stdin bool `json:"stdin,omitempty"`
	// Subdue represents one or more time windows when the check should be subdued.
	Subdue *TimeWindowWhen `json:"subdue,omitempty"`
	// Cron is the cron string at which the check should be run.
	Cron string `json:"cron,omitempty"`
	// TTL represents the length of time in seconds for which a check result is valid.
	Ttl int64 `json:"ttl,omitempty"`
	// Timeout is the timeout, in seconds, at which the check has to run
	Timeout uint32 `json:"timeout,omitempty"`
	// ProxyRequests represents a request to execute a proxy check
	ProxyRequests *ProxyRequests `json:"proxyRequests,omitempty"`
	// RoundRobin enables round-robin scheduling if set true.
	RoundRobin bool `json:"roundRobin,omitempty"`
	// OutputOutputMetricFormat is the metric protocol that the check's output will be
	// expected to follow in order to be extracted.
	OutputMetricFormat string `json:"outputMetricFormat,omitempty"`
	// OutputOutputMetricHandlers is the list of event handlers that will respond to metrics
	// that have been extracted from the check.
	OutputMetricHandlers []string `json:"outputMetricHandlers,omitempty"`
	// EnvVars is the list of environment variables to set for the check's
	// execution environment.
	EnvVars []string `json:"envVars,omitempty"`
	// Metadata contains the sensu name, sensu clusterName, sensu namespace, sensu labels and sensu annotations of the check
	SensuMetadata ObjectMeta `json:"sensuMetadata,omitempty"`
	// Validation is the OpenAPIV3Schema validation for sensu checks
	Validation k8s_api_extensions_v1beta1.CustomResourceValidation `json:"validation,omitempty"`
}

SensuCheckConfigSpec is the specification for a sensu check config +k8s:openapi-gen=true

func (*SensuCheckConfigSpec) DeepCopy

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

func (*SensuCheckConfigSpec) DeepCopyInto

func (in *SensuCheckConfigSpec) DeepCopyInto(out *SensuCheckConfigSpec)

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

type SensuCheckConfigStatus

type SensuCheckConfigStatus struct {
	Accepted  bool   `json:"accepted"`
	LastError string `json:"lastError"`
}

SensuCheckConfigStatus is the status of the sensu check config

func (*SensuCheckConfigStatus) DeepCopy

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

func (*SensuCheckConfigStatus) DeepCopyInto

func (in *SensuCheckConfigStatus) DeepCopyInto(out *SensuCheckConfigStatus)

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

type SensuCluster

type SensuCluster struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              ClusterSpec   `json:"spec"`
	Status            ClusterStatus `json:"status"`
}

SensuCluster is a sensu cluster

func (*SensuCluster) AsOwner

func (c *SensuCluster) AsOwner() metav1.OwnerReference

AsOwner returns an owner ref

func (*SensuCluster) DeepCopy

func (in *SensuCluster) DeepCopy() *SensuCluster

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

func (*SensuCluster) DeepCopyInto

func (in *SensuCluster) DeepCopyInto(out *SensuCluster)

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

func (*SensuCluster) DeepCopyObject

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

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

func (*SensuCluster) SetDefaults

func (c *SensuCluster) SetDefaults()

SetDefaults cleans up user passed spec, e.g. defaulting, transforming fields. TODO: move this to initializer

type SensuClusterList

type SensuClusterList struct {
	metav1.TypeMeta `json:",inline"`
	// Standard list metadata
	// More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []SensuCluster `json:"items"`
}

SensuClusterList is a list of sensu clusters.

func (*SensuClusterList) DeepCopy

func (in *SensuClusterList) DeepCopy() *SensuClusterList

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

func (*SensuClusterList) DeepCopyInto

func (in *SensuClusterList) DeepCopyInto(out *SensuClusterList)

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

func (*SensuClusterList) DeepCopyObject

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

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

type SensuClusterRef

type SensuClusterRef struct {
	// Name is the SensuCluster resource name.
	// This reference SensuCluster must be present in the same namespace as the restore-operator
	Name string `json:"name"`
}

SensuCluster references an SensuCluster resource whose metadata and spec will be used to create the new restored SensuCluster CR. This reference SensuCluster CR and all its resources will be deleted before the restored SensuCluster CR is created.

func (*SensuClusterRef) DeepCopy

func (in *SensuClusterRef) DeepCopy() *SensuClusterRef

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

func (*SensuClusterRef) DeepCopyInto

func (in *SensuClusterRef) DeepCopyInto(out *SensuClusterRef)

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

type SensuEventFilter

type SensuEventFilter struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              SensuEventFilterSpec `json:"spec"`
	// Status is the sensu event filters's status
	Status SensuEventFilterStatus `json:"status"`
}

SensuEventFilter is the type of sensu event filter +genclient +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object +k8s:openapi-gen=true

func (*SensuEventFilter) DeepCopy

func (in *SensuEventFilter) DeepCopy() *SensuEventFilter

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

func (*SensuEventFilter) DeepCopyInto

func (in *SensuEventFilter) DeepCopyInto(out *SensuEventFilter)

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

func (*SensuEventFilter) DeepCopyObject

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

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

func (SensuEventFilter) GetCustomResourceValidation

func (f SensuEventFilter) GetCustomResourceValidation() *k8s_api_extensions_v1beta1.CustomResourceValidation

GetCustomResourceValidation returns the event filter's resource validation

func (SensuEventFilter) ToSensuType

func (f SensuEventFilter) ToSensuType() *sensutypes.EventFilter

ToSensuType returns a value of the SensuEventFilter type from the Sensu API

type SensuEventFilterList

type SensuEventFilterList struct {
	metav1.TypeMeta `json:",inline"`
	// Standard list metadata
	// More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []SensuEventFilter `json:"items"`
}

SensuEventFilterList is a list of sensu event filters.

func (*SensuEventFilterList) DeepCopy

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

func (*SensuEventFilterList) DeepCopyInto

func (in *SensuEventFilterList) DeepCopyInto(out *SensuEventFilterList)

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

func (*SensuEventFilterList) DeepCopyObject

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

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

type SensuEventFilterSpec

type SensuEventFilterSpec struct {
	// Action specifies to allow/deny events to continue through the pipeline
	Action string `json:"action"`
	// Expressions is an array of boolean expressions that are &&'d together
	// to determine if the event matches this filter.
	Expressions []string `json:"expressions"`
	// Runtime assets are Sensu assets that contain javascript libraries. They
	// are evaluated within the execution context.
	RuntimeAssets []string `json:"runtimeAssets,omitempty"`

	// Organization indicates to which org an event filter belongs to
	Organization string `json:"organization,omitempty"`
	// Metadata contains the sensu name, sensu namespace, sensu labels and sensu annotations of the check
	SensuMetadata ObjectMeta `json:"sensuMetadata"`
}

SensuEventFilterSpec is the specification for a sensu event filter +k8s:openapi-gen=true

func (*SensuEventFilterSpec) DeepCopy

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

func (*SensuEventFilterSpec) DeepCopyInto

func (in *SensuEventFilterSpec) DeepCopyInto(out *SensuEventFilterSpec)

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

type SensuEventFilterStatus

type SensuEventFilterStatus struct {
	Accepted  bool   `json:"accepted"`
	LastError string `json:"lastError"`
}

SensuEventFilterStatus is the status of the sensu event filter

func (*SensuEventFilterStatus) DeepCopy

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

func (*SensuEventFilterStatus) DeepCopyInto

func (in *SensuEventFilterStatus) DeepCopyInto(out *SensuEventFilterStatus)

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

type SensuHandler

type SensuHandler struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              SensuHandlerSpec   `json:"spec"`
	Status            SensuHandlerStatus `json:"status"`
}

+genclient +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object +k8s:openapi-gen=true SensuHandler is the type of sensu handlers

func (*SensuHandler) DeepCopy

func (in *SensuHandler) DeepCopy() *SensuHandler

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

func (*SensuHandler) DeepCopyInto

func (in *SensuHandler) DeepCopyInto(out *SensuHandler)

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

func (*SensuHandler) DeepCopyObject

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

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

func (SensuHandler) GetCustomResourceValidation

func (a SensuHandler) GetCustomResourceValidation() *k8s_api_extensions_v1beta1.CustomResourceValidation

GetCustomResourceValidation rreturns the handlers's resource validation

func (SensuHandler) ToSensuType

func (a SensuHandler) ToSensuType() *sensutypes.Handler

ToSensuType returns a value of the Handler type from the Sensu API

type SensuHandlerList

type SensuHandlerList struct {
	metav1.TypeMeta `json:",inline"`
	// Standard list metadata
	// More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []SensuHandler `json:"items"`
}

SensuHandlerList is a list of sensu handlers.

func (*SensuHandlerList) DeepCopy

func (in *SensuHandlerList) DeepCopy() *SensuHandlerList

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

func (*SensuHandlerList) DeepCopyInto

func (in *SensuHandlerList) DeepCopyInto(out *SensuHandlerList)

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

func (*SensuHandlerList) DeepCopyObject

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

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

type SensuHandlerSpec

type SensuHandlerSpec struct {
	Type          string        `json:"type"`
	Mutator       string        `json:"mutator,omitempty"`
	Command       string        `json:"command,omitempty"`
	Timeout       uint32        `json:"timeout,omitempty"`
	Socket        HandlerSocket `json:"socket,omitempty"`
	Handlers      []string      `json:"handlers,omitempty"`
	Filters       []string      `json:"filters,omitempty"`
	EnvVars       []string      `json:"envVars,omitempty"`
	RuntimeAssets []string      `json:"runtimeAssets,omitempty"`
	// Metadata contains the sensu name, sensu namespace, sensu annotations, and sensu labels of the handler
	SensuMetadata ObjectMeta `json:"sensuMetadata"`
	// Validation is the OpenAPIV3Schema validation for sensu assets
	Validation k8s_api_extensions_v1beta1.CustomResourceValidation `json:"validation,omitempty"`
}

SensuHandlerSpec is the spec section of the custom object +k8s:openapi-gen=true

func (*SensuHandlerSpec) DeepCopy

func (in *SensuHandlerSpec) DeepCopy() *SensuHandlerSpec

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

func (*SensuHandlerSpec) DeepCopyInto

func (in *SensuHandlerSpec) DeepCopyInto(out *SensuHandlerSpec)

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

type SensuHandlerStatus

type SensuHandlerStatus struct {
	Accepted  bool   `json:"accepted"`
	LastError string `json:"lastError"`
}

SensuHandlerStatus is the status of the sensu handler

func (*SensuHandlerStatus) DeepCopy

func (in *SensuHandlerStatus) DeepCopy() *SensuHandlerStatus

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

func (*SensuHandlerStatus) DeepCopyInto

func (in *SensuHandlerStatus) DeepCopyInto(out *SensuHandlerStatus)

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

type SensuRestore

type SensuRestore struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata"`
	Spec              RestoreSpec   `json:"spec"`
	Status            RestoreStatus `json:"status,omitempty"`
}

SensuRestore represents a Kubernetes SensuRestore Custom Resource. The SensuRestore CR name will be used as the name of the new restored cluster.

func (*SensuRestore) DeepCopy

func (in *SensuRestore) DeepCopy() *SensuRestore

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

func (*SensuRestore) DeepCopyInto

func (in *SensuRestore) DeepCopyInto(out *SensuRestore)

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

func (*SensuRestore) DeepCopyObject

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

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

type SensuRestoreList

type SensuRestoreList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata"`
	Items           []SensuRestore `json:"items"`
}

SensuRestoreList is a list of SensuRestore.

func (*SensuRestoreList) DeepCopy

func (in *SensuRestoreList) DeepCopy() *SensuRestoreList

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

func (*SensuRestoreList) DeepCopyInto

func (in *SensuRestoreList) DeepCopyInto(out *SensuRestoreList)

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

func (*SensuRestoreList) DeepCopyObject

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

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

type StaticTLS

type StaticTLS struct {
	// Member contains secrets containing TLS certs used by each etcd member pod.
	Member *MemberSecret `json:"member,omitempty"`
	// OperatorSecret is the secret containing TLS certs used by operator to
	// talk securely to this cluster.
	OperatorSecret string `json:"operatorSecret,omitempty"`
}

func (*StaticTLS) DeepCopy

func (in *StaticTLS) DeepCopy() *StaticTLS

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

func (*StaticTLS) DeepCopyInto

func (in *StaticTLS) DeepCopyInto(out *StaticTLS)

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

type TLSPolicy

type TLSPolicy struct {
	// StaticTLS enables user to generate static x509 certificates and keys,
	// put them into Kubernetes secrets, and specify them into here.
	Static *StaticTLS `json:"static,omitempty"`
}

TLSPolicy defines the TLS policy of an etcd cluster

func (*TLSPolicy) DeepCopy

func (in *TLSPolicy) DeepCopy() *TLSPolicy

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

func (*TLSPolicy) DeepCopyInto

func (in *TLSPolicy) DeepCopyInto(out *TLSPolicy)

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

func (*TLSPolicy) IsSecureClient

func (tp *TLSPolicy) IsSecureClient() bool

func (*TLSPolicy) IsSecurePeer

func (tp *TLSPolicy) IsSecurePeer() bool

func (*TLSPolicy) Validate

func (tp *TLSPolicy) Validate() error

type TimeWindowDays

type TimeWindowDays struct {
	All       []*TimeWindowTimeRange `json:"all,omitempty"`
	Sunday    []*TimeWindowTimeRange `json:"sunday,omitempty"`
	Monday    []*TimeWindowTimeRange `json:"monday,omitempty"`
	Tuesday   []*TimeWindowTimeRange `json:"tuesday,omitempty"`
	Wednesday []*TimeWindowTimeRange `json:"wednesday,omitempty"`
	Thursday  []*TimeWindowTimeRange `json:"thursday,omitempty"`
	Friday    []*TimeWindowTimeRange `json:"friday,omitempty"`
	Saturday  []*TimeWindowTimeRange `json:"saturday,omitempty"`
}

TimeWindowDays defines the days of a time window

func (*TimeWindowDays) DeepCopy

func (in *TimeWindowDays) DeepCopy() *TimeWindowDays

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

func (*TimeWindowDays) DeepCopyInto

func (in *TimeWindowDays) DeepCopyInto(out *TimeWindowDays)

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

type TimeWindowTimeRange

type TimeWindowTimeRange struct {
	// Begin is the time which the time window should begin, in the format
	// '3:00PM', which satisfies the time.Kitchen format
	Begin string `json:"begin"`
	// End is the time which the filter should end, in the format '3:00PM', which
	// satisfies the time.Kitchen format
	End string `json:"end"`
}

TimeWindowTimeRange defines the time ranges of a time

func (*TimeWindowTimeRange) DeepCopy

func (in *TimeWindowTimeRange) DeepCopy() *TimeWindowTimeRange

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

func (*TimeWindowTimeRange) DeepCopyInto

func (in *TimeWindowTimeRange) DeepCopyInto(out *TimeWindowTimeRange)

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

type TimeWindowWhen

type TimeWindowWhen struct {
	// Days is a hash of days
	Days TimeWindowDays `json:"days"`
}

TimeWindowWhen defines the "when" attributes for time windows

func (*TimeWindowWhen) DeepCopy

func (in *TimeWindowWhen) DeepCopy() *TimeWindowWhen

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

func (*TimeWindowWhen) DeepCopyInto

func (in *TimeWindowWhen) DeepCopyInto(out *TimeWindowWhen)

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