v1alpha1

package
v0.0.9 Latest Latest
Warning

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

Go to latest
Published: Sep 17, 2021 License: Apache-2.0 Imports: 19 Imported by: 0

Documentation

Overview

Package v1alpha1 is the v1alpha1 version of the API.

Index

Constants

View Source
const EnvVarNodeName = "NODE_NAME"

Environment variable for the current node that needs to be interpolated in generated scrape configurations for a PodMonitoring resource.

View Source
const (
	Version = "v1alpha1"
)

Variables

View Source
var (
	// SchemeBuilder initializes a scheme builder.
	SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes)
	// AddToScheme is a global function that registers this API group & version to a scheme.
	AddToScheme = SchemeBuilder.AddToScheme
	// SchemeGroupVersion is group version used to register these objects.
	SchemeGroupVersion = schema.GroupVersion{Group: monitoring.GroupName, Version: Version}
)

Functions

func Kind

func Kind(kind string) schema.GroupKind

Kind takes an unqualified kind and returns back a Group qualified GroupKind.

func PodMonitoringResource

func PodMonitoringResource() metav1.GroupVersionResource

PodMonitoringResource returns a PodMonitoring GroupVersionResource. This can be used to enforce API types.

func Resource

func Resource(resource string) schema.GroupResource

Resource takes an unqualified resource and returns a Group qualified GroupResource.

Types

type AlertingSpec added in v0.0.9

type AlertingSpec struct {
	// Alertmanagers contains endpoint configuration for designated Alertmanagers.
	Alertmanagers []AlertmanagerEndpoints `json:"alertmanagers"`
}

AlertingSpec defines alerting configuration. Taking inspiration from prometheus-operator: https://github.com/prometheus-operator/prometheus-operator/blob/2c81b0cf6a5673e08057499a08ddce396b19dda4/Documentation/api.md#alertingspec

func (*AlertingSpec) DeepCopy added in v0.0.9

func (in *AlertingSpec) DeepCopy() *AlertingSpec

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

func (*AlertingSpec) DeepCopyInto added in v0.0.9

func (in *AlertingSpec) DeepCopyInto(out *AlertingSpec)

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

type AlertmanagerEndpoints added in v0.0.9

type AlertmanagerEndpoints struct {
	// Namespace of Endpoints object.
	Namespace string `json:"namespace"`
	// Name of Endpoints object in Namespace.
	Name string `json:"name"`
	// Port the Alertmanager API is exposed on.
	Port intstr.IntOrString `json:"port"`
	// Scheme to use when firing alerts.
	Scheme string `json:"scheme,omitempty"`
	// Prefix for the HTTP path alerts are pushed to.
	PathPrefix string `json:"pathPrefix,omitempty"`
	// TLS Config to use for alertmanager connection.
	TLSConfig *TLSConfig `json:"tlsConfig,omitempty"`
	// BearerTokenFile to read from filesystem to use when authenticating to
	// Alertmanager.
	BearerTokenFile string `json:"bearerTokenFile,omitempty"`
	// Authorization section for this alertmanager endpoint
	Authorization *SafeAuthorization `json:"authorization,omitempty"`
	// Version of the Alertmanager API that rule-evaluator uses to send alerts. It
	// can be "v1" or "v2".
	APIVersion string `json:"apiVersion,omitempty"`
	// Timeout is a per-target Alertmanager timeout when pushing alerts.
	Timeout *string `json:"timeout,omitempty"`
}

AlertmanagerEndpoints defines a selection of a single Endpoints object containing alertmanager IPs to fire alerts against. Taking inspiration from prometheus-operator: https://github.com/prometheus-operator/prometheus-operator/blob/2c81b0cf6a5673e08057499a08ddce396b19dda4/Documentation/api.md#alertmanagerendpoints

func (*AlertmanagerEndpoints) DeepCopy added in v0.0.9

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

func (*AlertmanagerEndpoints) DeepCopyInto added in v0.0.9

func (in *AlertmanagerEndpoints) DeepCopyInto(out *AlertmanagerEndpoints)

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

type LabelMapping

type LabelMapping struct {
	// Kubenetes resource label to remap.
	From string `json:"from"`
	// Remapped Prometheus target label.
	// Defaults to the same name as `From`.
	To string `json:"to,omitempty"`
}

LabelMapping specifies how to transfer a label from a Kubernetes resource onto a Prometheus target.

func (*LabelMapping) DeepCopy

func (in *LabelMapping) DeepCopy() *LabelMapping

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

func (*LabelMapping) DeepCopyInto

func (in *LabelMapping) DeepCopyInto(out *LabelMapping)

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

type MonitoringCondition

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

MonitoringCondition describes a condition of a PodMonitoring.

func NewDefaultConditions

func NewDefaultConditions(now metav1.Time) []MonitoringCondition

NewDefaultConditions returns a list of default conditions for at the given time for a `PodMonitoringStatus` if never explicitly set.

func (*MonitoringCondition) DeepCopy

func (in *MonitoringCondition) DeepCopy() *MonitoringCondition

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

func (*MonitoringCondition) DeepCopyInto

func (in *MonitoringCondition) DeepCopyInto(out *MonitoringCondition)

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

type MonitoringConditionType

type MonitoringConditionType string

MonitoringConditionType is the type of MonitoringCondition.

const (
	// ConfigurationCreateSuccess indicates that the config generated from the
	// monitoring resource was created successfully.
	ConfigurationCreateSuccess MonitoringConditionType = "ConfigurationCreateSuccess"
)

type NamespacedConfigMapKeySelector added in v0.0.9

type NamespacedConfigMapKeySelector struct {
	v1.ConfigMapKeySelector `json:",inline"`
	Namespace               string `json:"namespace"`
}

NamespacedConfigMapKeySelector wraps the core ConfigMapKeySelector with namespace.

func (*NamespacedConfigMapKeySelector) DeepCopy added in v0.0.9

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

func (*NamespacedConfigMapKeySelector) DeepCopyInto added in v0.0.9

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

type NamespacedSecretKeySelector added in v0.0.9

type NamespacedSecretKeySelector struct {
	v1.SecretKeySelector `json:",inline"`
	Namespace            string `json:"namespace"`
}

NamespacedSecretKeySelector wraps the core SecretKeySelector with namespace.

func (*NamespacedSecretKeySelector) DeepCopy added in v0.0.9

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

func (*NamespacedSecretKeySelector) DeepCopyInto added in v0.0.9

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

type NamespacedSecretOrConfigMap added in v0.0.9

type NamespacedSecretOrConfigMap struct {
	// Secret containing data to use for the targets.
	Secret *NamespacedSecretKeySelector `json:"secret,omitempty"`
	// ConfigMap containing data to use for the targets.
	ConfigMap *NamespacedConfigMapKeySelector `json:"configMap,omitempty"`
}

NamespacedSecretOrConfigMap allows to specify data as a Secret or ConfigMap. Fields are mutually exclusive. Taking inspiration from prometheus-operator: https://github.com/prometheus-operator/prometheus-operator/blob/2c81b0cf6a5673e08057499a08ddce396b19dda4/Documentation/api.md#secretorconfigmap

func (*NamespacedSecretOrConfigMap) DeepCopy added in v0.0.9

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

func (*NamespacedSecretOrConfigMap) DeepCopyInto added in v0.0.9

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

type OperatorConfig added in v0.0.9

type OperatorConfig struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	// Rules contains how the operator configures and deployes rule-evaluator.
	Rules RuleEvaluatorSpec `json:"rules"`
}

OperatorConfig defines configuration of the gmp-operator. +genclient +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object

func (*OperatorConfig) DeepCopy added in v0.0.9

func (in *OperatorConfig) DeepCopy() *OperatorConfig

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

func (*OperatorConfig) DeepCopyInto added in v0.0.9

func (in *OperatorConfig) DeepCopyInto(out *OperatorConfig)

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

func (*OperatorConfig) DeepCopyObject added in v0.0.9

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

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

type OperatorConfigList added in v0.0.9

type OperatorConfigList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []OperatorConfig `json:"items"`
}

OperatorConfigList is a list of OperatorConfigs. +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object

func (*OperatorConfigList) DeepCopy added in v0.0.9

func (in *OperatorConfigList) DeepCopy() *OperatorConfigList

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

func (*OperatorConfigList) DeepCopyInto added in v0.0.9

func (in *OperatorConfigList) DeepCopyInto(out *OperatorConfigList)

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

func (*OperatorConfigList) DeepCopyObject added in v0.0.9

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

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

type PodMonitoring

type PodMonitoring struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	// Specification of desired Pod selection for target discovery by
	// Prometheus.
	Spec PodMonitoringSpec `json:"spec"`
	// Most recently observed status of the resource.
	// +optional
	Status PodMonitoringStatus `json:"status"`
}

PodMonitoring defines monitoring for a set of pods. +genclient +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object

func (*PodMonitoring) DeepCopy

func (in *PodMonitoring) DeepCopy() *PodMonitoring

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

func (*PodMonitoring) DeepCopyInto

func (in *PodMonitoring) DeepCopyInto(out *PodMonitoring)

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

func (*PodMonitoring) DeepCopyObject

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

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

func (*PodMonitoring) ScrapeConfigs added in v0.0.3

func (pm *PodMonitoring) ScrapeConfigs() (res []*promconfig.ScrapeConfig, err error)

func (*PodMonitoring) ValidateCreate added in v0.0.3

func (pm *PodMonitoring) ValidateCreate() error

func (*PodMonitoring) ValidateDelete added in v0.0.3

func (pm *PodMonitoring) ValidateDelete() error

func (*PodMonitoring) ValidateUpdate added in v0.0.3

func (pm *PodMonitoring) ValidateUpdate(old runtime.Object) error

type PodMonitoringList

type PodMonitoringList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []PodMonitoring `json:"items"`
}

PodMonitoringList is a list of PodMonitorings. +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object

func (*PodMonitoringList) DeepCopy

func (in *PodMonitoringList) DeepCopy() *PodMonitoringList

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

func (*PodMonitoringList) DeepCopyInto

func (in *PodMonitoringList) DeepCopyInto(out *PodMonitoringList)

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

func (*PodMonitoringList) DeepCopyObject

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

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

type PodMonitoringSpec

type PodMonitoringSpec struct {
	Selector     metav1.LabelSelector `json:"selector"`
	Endpoints    []ScrapeEndpoint     `json:"endpoints"`
	TargetLabels TargetLabels         `json:"targetLabels,omitempty"`
}

PodMonitoringSpec contains specification parameters for PodMonitoring.

func (*PodMonitoringSpec) DeepCopy

func (in *PodMonitoringSpec) DeepCopy() *PodMonitoringSpec

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

func (*PodMonitoringSpec) DeepCopyInto

func (in *PodMonitoringSpec) DeepCopyInto(out *PodMonitoringSpec)

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

type PodMonitoringStatus

type PodMonitoringStatus struct {
	// The generation observed by the controller.
	// +optional
	ObservedGeneration int64 `json:"observedGeneration"`
	// Represents the latest available observations of a podmonitor's current state.
	Conditions []MonitoringCondition `json:"conditions,omitempty"`
}

PodMonitoringStatus holds status information of a PodMonitoring resource.

func (*PodMonitoringStatus) DeepCopy

func (in *PodMonitoringStatus) DeepCopy() *PodMonitoringStatus

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

func (*PodMonitoringStatus) DeepCopyInto

func (in *PodMonitoringStatus) DeepCopyInto(out *PodMonitoringStatus)

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

type Rule added in v0.0.1

type Rule struct {
	Record      string            `json:"record"`
	Alert       string            `json:"alert"`
	Expr        string            `json:"expr"`
	For         string            `json:"for"`
	Labels      map[string]string `json:"labels"`
	Annotations map[string]string `json:"annotations"`
}

Rule is a single rule in the Prometheus format: https://prometheus.io/docs/prometheus/latest/configuration/recording_rules/

func (*Rule) DeepCopy added in v0.0.1

func (in *Rule) DeepCopy() *Rule

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

func (*Rule) DeepCopyInto added in v0.0.1

func (in *Rule) DeepCopyInto(out *Rule)

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

type RuleEvaluatorSpec added in v0.0.9

type RuleEvaluatorSpec struct {
	// Alerting contains how the rule-evaluator configures alerting.
	Alerting AlertingSpec `json:"alerting"`
}

RuleEvaluatorSpec defines configuration for deploying rule-evaluator.

func (*RuleEvaluatorSpec) DeepCopy added in v0.0.9

func (in *RuleEvaluatorSpec) DeepCopy() *RuleEvaluatorSpec

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

func (*RuleEvaluatorSpec) DeepCopyInto added in v0.0.9

func (in *RuleEvaluatorSpec) DeepCopyInto(out *RuleEvaluatorSpec)

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

type RuleGroup added in v0.0.1

type RuleGroup struct {
	Name     string `json:"name"`
	Interval string `json:"interval"`
	Rules    []Rule `json:"rules"`
}

RuleGroup declares rules in the Prometheus format: https://prometheus.io/docs/prometheus/latest/configuration/recording_rules/

func (*RuleGroup) DeepCopy added in v0.0.1

func (in *RuleGroup) DeepCopy() *RuleGroup

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

func (*RuleGroup) DeepCopyInto added in v0.0.1

func (in *RuleGroup) DeepCopyInto(out *RuleGroup)

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

type Rules added in v0.0.1

type Rules struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	// Specification of desired Pod selection for target discovery by
	// Prometheus.
	Spec RulesSpec `json:"spec"`
	// Most recently observed status of the resource.
	// +optional
	Status RulesStatus `json:"status"`
}

Rules defines Prometheus alerting and recording rules. +genclient +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object

func (*Rules) DeepCopy added in v0.0.1

func (in *Rules) DeepCopy() *Rules

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

func (*Rules) DeepCopyInto added in v0.0.1

func (in *Rules) DeepCopyInto(out *Rules)

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

func (*Rules) DeepCopyObject added in v0.0.1

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

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

type RulesList added in v0.0.1

type RulesList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []Rules `json:"items"`
}

RulesList is a list of Rules. +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object

func (*RulesList) DeepCopy added in v0.0.1

func (in *RulesList) DeepCopy() *RulesList

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

func (*RulesList) DeepCopyInto added in v0.0.1

func (in *RulesList) DeepCopyInto(out *RulesList)

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

func (*RulesList) DeepCopyObject added in v0.0.1

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

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

type RulesSpec added in v0.0.1

type RulesSpec struct {
	Scope  Scope       `json:"scope"`
	Groups []RuleGroup `json:"groups"`
}

RulesSpec contains specification parameters for a Rules resource.

func (*RulesSpec) DeepCopy added in v0.0.1

func (in *RulesSpec) DeepCopy() *RulesSpec

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

func (*RulesSpec) DeepCopyInto added in v0.0.1

func (in *RulesSpec) DeepCopyInto(out *RulesSpec)

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

type RulesStatus added in v0.0.1

type RulesStatus struct {
}

RulesStatus contains status information for a Rules resource.

func (*RulesStatus) DeepCopy added in v0.0.1

func (in *RulesStatus) DeepCopy() *RulesStatus

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

func (*RulesStatus) DeepCopyInto added in v0.0.1

func (in *RulesStatus) DeepCopyInto(out *RulesStatus)

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

type SafeAuthorization added in v0.0.9

type SafeAuthorization struct {
	// Set the authentication type. Defaults to Bearer, Basic will cause an
	// error
	Type string `json:"type,omitempty"`
	// The secret's key that contains the credentials of the request
	Credentials *NamespacedSecretKeySelector `json:"credentials,omitempty"`
}

SafeAuthorization specifies a subset of the Authorization struct, that is safe for use in Endpoints (no CredentialsFile field). Taking inspiration from prometheus-operator: https://github.com/prometheus-operator/prometheus-operator/blob/2c81b0cf6a5673e08057499a08ddce396b19dda4/Documentation/api.md#safeauthorization

func (*SafeAuthorization) DeepCopy added in v0.0.9

func (in *SafeAuthorization) DeepCopy() *SafeAuthorization

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

func (*SafeAuthorization) DeepCopyInto added in v0.0.9

func (in *SafeAuthorization) DeepCopyInto(out *SafeAuthorization)

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

type Scope added in v0.0.1

type Scope string

Scope of metric data a set of rules applies to.

const (
	ScopeCluster   Scope = "Cluster"
	ScopeNamespace Scope = "Namespace"
)

The valid scopes. Currently only cluster and namespace are supported, i.e. rules only select over data for a given cluster or namespace. Support for rules processing over an entire project or even across projects may be added once uses cases have been identified more clearly.

type ScrapeEndpoint

type ScrapeEndpoint struct {
	// Name or number of the port to scrape.
	Port intstr.IntOrString `json:"port,omitempty"`
	// HTTP path to scrape metrics from. Defaults to "/metrics".
	Path string `json:"path,omitempty"`
	// Interval at which to scrape metrics. Must be a valid Prometheus duration.
	Interval string `json:"interval,omitempty"`
	// Timeout for metrics scrapes. Must be a valid Prometheus duration.
	Timeout string `json:"timeout,omitempty"`
}

ScrapeEndpoint specifies a Prometheus metrics endpoint to scrape.

func (*ScrapeEndpoint) DeepCopy

func (in *ScrapeEndpoint) DeepCopy() *ScrapeEndpoint

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

func (*ScrapeEndpoint) DeepCopyInto

func (in *ScrapeEndpoint) DeepCopyInto(out *ScrapeEndpoint)

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

type TLSConfig added in v0.0.9

type TLSConfig struct {
	// Struct containing the CA cert to use for the targets.
	CA NamespacedSecretOrConfigMap `json:"ca,omitempty"`
	// Struct containing the client cert file for the targets.
	Cert NamespacedSecretOrConfigMap `json:"cert,omitempty"`
	// Secret containing the client key file for the targets.
	KeySecret *NamespacedSecretKeySelector `json:"keySecret,omitempty"`
	// Used to verify the hostname for the targets.
	ServerName string `json:"serverName,omitempty"`
	// Disable target certificate validation.
	InsecureSkipVerify bool `json:"insecureSkipVerify,omitempty"`
}

SafeTLSConfig specifies TLS configuration parameters from Kubernetes resources. Taking inspiration from prometheus-operator: https://github.com/prometheus-operator/prometheus-operator/blob/2c81b0cf6a5673e08057499a08ddce396b19dda4/Documentation/api.md#safetlsconfig

func (*TLSConfig) DeepCopy added in v0.0.9

func (in *TLSConfig) DeepCopy() *TLSConfig

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

func (*TLSConfig) DeepCopyInto added in v0.0.9

func (in *TLSConfig) DeepCopyInto(out *TLSConfig)

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

type TargetLabels

type TargetLabels struct {
	// Labels to transfer from the Kubernetes Pod to Prometheus target labels.
	// In the case of a label mapping conflict:
	// - Mappings at the end of the array take precedence.
	FromPod []LabelMapping `json:"fromPod,omitempty"`
}

TargetLabels groups label mappings by Kubernetes resource.

func (*TargetLabels) DeepCopy

func (in *TargetLabels) DeepCopy() *TargetLabels

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

func (*TargetLabels) DeepCopyInto

func (in *TargetLabels) DeepCopyInto(out *TargetLabels)

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