Documentation
¶
Index ¶
- Constants
- Variables
- func MakeBasicIngress(serviceName string, servicePort int) *networkv1.Ingress
- func MakeConfigMapWithCert(kubeClient kubernetes.Interface, ns, name, keyKey, certKey, caKey string, ...) *v1.ConfigMap
- func MakeDeployment(pathToYaml string) (*appsv1.Deployment, error)
- func MakeSecretWithCert(ns, name string, keyList []string, dataList [][]byte) *corev1.Secret
- func MakeService(pathToYaml string) (*v1.Service, error)
- func PathToOSFile(relativePath string) (*os.File, error)
- func StartPortForward(config *rest.Config, scheme string, name string, ns string, port string) error
- func WaitForCRDReady(listFunc func(opts metav1.ListOptions) (runtime.Object, error)) error
- func WaitForHTTPSuccessStatusCode(timeout time.Duration, url string) error
- type Cert
- type ExecOptions
- type FinalizerFn
- type Framework
- func (f *Framework) AddAlertingToPrometheus(p *monitoringv1.Prometheus, ns, name string)
- func (f *Framework) AddLabelsToNamespace(ctx context.Context, name string, additionalLabels map[string]string) error
- func (f *Framework) AddRemoteWriteWithTLSToPrometheus(p *monitoringv1.Prometheus, url string, prwtc PromRemoteWriteTestConfig)
- func (f *Framework) AlertmanagerConfigSecret(ns, name string) (*v1.Secret, error)
- func (f *Framework) CheckPrometheusFiringAlert(ctx context.Context, ns, svcName, alertName string) (bool, error)
- func (f *Framework) CheckThanosFiringAlert(ctx context.Context, ns, svcName, alertName string) (bool, error)
- func (f *Framework) CreateAlertmanagerAndWaitUntilReady(ctx context.Context, ns string, a *monitoringv1.Alertmanager) (*monitoringv1.Alertmanager, error)
- func (f *Framework) CreateBlackBoxExporterAndWaitUntilReady(ctx context.Context, ns, name string) error
- func (f *Framework) CreateCRD(ctx context.Context, crd *v1.CustomResourceDefinition) error
- func (f *Framework) CreateCRDAndWaitUntilReady(ctx context.Context, crdName string, ...) error
- func (f *Framework) CreateClusterRole(ctx context.Context, relativePath string) (*rbacv1.ClusterRole, error)
- func (f *Framework) CreateDeployment(ctx context.Context, namespace string, d *appsv1.Deployment) error
- func (f *Framework) CreateIngress(ctx context.Context, namespace string, i *networkv1.Ingress) error
- func (f *Framework) CreateNamespace(ctx context.Context, t *testing.T, testCtx *TestCtx) string
- func (f *Framework) CreatePrometheusAndWaitUntilReady(ctx context.Context, ns string, p *monitoringv1.Prometheus) (*monitoringv1.Prometheus, error)
- func (f *Framework) CreatePrometheusOperator(ctx context.Context, ns, opImage string, ...) ([]FinalizerFn, error)
- func (f *Framework) CreateRoleBinding(ctx context.Context, ns string, relativePath string) (FinalizerFn, error)
- func (f *Framework) CreateRoleBindingForSubjectNamespace(ctx context.Context, ns, subjectNs string, relativePath string) (FinalizerFn, error)
- func (f *Framework) CreateRule(ctx context.Context, ns string, ar *monitoringv1.PrometheusRule) (*monitoringv1.PrometheusRule, error)
- func (f *Framework) CreateSecretWithCert(ctx context.Context, certBytes, keyBytes []byte, ns, name string) error
- func (f *Framework) CreateServiceAndWaitUntilReady(ctx context.Context, namespace string, service *v1.Service) (FinalizerFn, error)
- func (f *Framework) CreateSilence(ctx context.Context, ns, n string) (string, error)
- func (f *Framework) CreateThanosRulerAndWaitUntilReady(ctx context.Context, ns string, tr *monitoringv1.ThanosRuler) (*monitoringv1.ThanosRuler, error)
- func (f *Framework) DeleteAlertmanagerAndWaitUntilGone(ctx context.Context, ns, name string) error
- func (f *Framework) DeleteClusterRole(ctx context.Context, relativePath string) error
- func (f *Framework) DeleteClusterRoleBinding(ctx context.Context, ns string, relativePath string) error
- func (f *Framework) DeleteDeployment(ctx context.Context, namespace, name string) error
- func (f *Framework) DeleteNamespace(ctx context.Context, name string) error
- func (f *Framework) DeleteNginxIngressControllerIncDefaultBackend(ctx context.Context, namespace string) error
- func (f *Framework) DeletePrometheusAndWaitUntilGone(ctx context.Context, ns, name string) error
- func (f *Framework) DeleteRoleBinding(ctx context.Context, ns string, relativePath string) error
- func (f *Framework) DeleteRule(ctx context.Context, ns string, r string) error
- func (f *Framework) DeleteServiceAccount(ctx context.Context, namespace string, relativePath string) error
- func (f *Framework) DeleteServiceAndWaitUntilGone(ctx context.Context, namespace string, serviceName string) error
- func (f *Framework) DeleteThanosRulerAndWaitUntilGone(ctx context.Context, ns, name string) error
- func (f *Framework) ExecWithOptions(options ExecOptions) (string, string, error)
- func (f *Framework) GetActiveTargets(ctx context.Context, ns, svcName string) ([]*Target, error)
- func (f *Framework) GetAlertmanagerMetrics(ctx context.Context, ns, n string) (textparse.Parser, error)
- func (f *Framework) GetAlertmanagerStatus(ctx context.Context, ns, n string) (models.AlertmanagerStatus, error)
- func (f *Framework) GetCRD(ctx context.Context, name string) (*v1.CustomResourceDefinition, error)
- func (f *Framework) GetDeployment(ctx context.Context, ns, name string) (*appsv1.Deployment, error)
- func (f *Framework) GetHealthyTargets(ctx context.Context, ns, svcName string) ([]*Target, error)
- func (f *Framework) GetIngressIP(ctx context.Context, namespace string, ingressName string) (*string, error)
- func (f *Framework) GetLogs(ctx context.Context, namespace string, podName, containerName string) (string, error)
- func (f *Framework) GetPodRestartCount(ctx context.Context, ns, podName string) (map[string]int32, error)
- func (f *Framework) GetRule(ctx context.Context, ns, name string) (*monitoringv1.PrometheusRule, error)
- func (f *Framework) GetSilences(ctx context.Context, ns, n string) (models.GettableSilences, error)
- func (f *Framework) ListCRDs(ctx context.Context) (*v1.CustomResourceDefinitionList, error)
- func (f *Framework) MakeAlertmanagerService(name, group string, serviceType v1.ServiceType) *v1.Service
- func (f *Framework) MakeAndCreateFiringRule(ctx context.Context, ns, name, alertName string) (*monitoringv1.PrometheusRule, error)
- func (f *Framework) MakeAndCreateInvalidRule(ctx context.Context, ns, name, alertName string) (*monitoringv1.PrometheusRule, error)
- func (f *Framework) MakeBasicAlertmanager(name string, replicas int32) *monitoringv1.Alertmanager
- func (f *Framework) MakeBasicPodMonitor(name string) *monitoringv1.PodMonitor
- func (f *Framework) MakeBasicPrometheus(ns, name, group string, replicas int32) *monitoringv1.Prometheus
- func (f *Framework) MakeBasicRule(ns, name string, groups []monitoringv1.RuleGroup) *monitoringv1.PrometheusRule
- func (f *Framework) MakeBasicServiceMonitor(name string) *monitoringv1.ServiceMonitor
- func (f *Framework) MakeBasicStaticProbe(name, url string, targets []string) *monitoringv1.Probe
- func (f *Framework) MakeBasicThanosRuler(name string, replicas int32, queryEndpoint string) *monitoringv1.ThanosRuler
- func (f *Framework) MakeBlackBoxExporterService(ns, name string) *v1.Service
- func (f *Framework) MakeCRD(pathToYaml string) (*v1.CustomResourceDefinition, error)
- func (f *Framework) MakeEchoDeployment(group string) *appsv1.Deployment
- func (f *Framework) MakeEchoService(name, group string, serviceType v1.ServiceType) *v1.Service
- func (f *Framework) MakePrometheusService(name, group string, serviceType v1.ServiceType) *v1.Service
- func (f *Framework) MakeThanosQuerierService(name string) *v1.Service
- func (f *Framework) MakeThanosRulerService(name, group string, serviceType v1.ServiceType) *v1.Service
- func (f *Framework) NewTestCtx(t *testing.T) *TestCtx
- func (f *Framework) PollAlertmanagerConfiguration(ctx context.Context, ns, amName string, ...) error
- func (f *Framework) PrintEvents(ctx context.Context) error
- func (f *Framework) PrintPodLogs(ctx context.Context, ns, p string) error
- func (f *Framework) PrintPrometheusLogs(ctx context.Context, t *testing.T, p *monitoringv1.Prometheus)
- func (f *Framework) PrometheusQuery(ns, svcName, query string) ([]PrometheusQueryResult, error)
- func (f *Framework) PrometheusSVCGetRequest(ctx context.Context, ns, svcName, endpoint string, query map[string]string) ([]byte, error)
- func (f *Framework) ProxyGetPod(namespace, podName, path string) *rest.Request
- func (f *Framework) ProxyPostPod(namespace, podName, path, body string) *rest.Request
- func (f *Framework) RemoveLabelsFromNamespace(ctx context.Context, name string, labels ...string) error
- func (f *Framework) SecretFromYaml(filepath string) (*v1.Secret, error)
- func (f *Framework) SendAlertToAlertmanager(ctx context.Context, ns, n string) error
- func (f *Framework) SetupNginxIngressControllerIncDefaultBackend(ctx context.Context, namespace string) error
- func (f *Framework) SetupPrometheusRBAC(ctx context.Context, t *testing.T, testCtx *TestCtx, ns string)
- func (f *Framework) SetupPrometheusRBACGlobal(ctx context.Context, t *testing.T, testCtx *TestCtx, ns string)
- func (f *Framework) ThanosSVCGetRequest(ctx context.Context, ns, svcName, endpoint string, query map[string]string) ([]byte, error)
- func (f *Framework) UpdateAlertmanagerAndWaitUntilReady(ctx context.Context, ns string, a *monitoringv1.Alertmanager) (*monitoringv1.Alertmanager, error)
- func (f *Framework) UpdateClusterRole(ctx context.Context, clusterRole *rbacv1.ClusterRole) error
- func (f *Framework) UpdateDeployment(ctx context.Context, deployment *appsv1.Deployment) (*appsv1.Deployment, error)
- func (f *Framework) UpdatePrometheusAndWaitUntilReady(ctx context.Context, ns string, p *monitoringv1.Prometheus) (*monitoringv1.Prometheus, error)
- func (f *Framework) UpdateRule(ctx context.Context, ns string, ar *monitoringv1.PrometheusRule) (*monitoringv1.PrometheusRule, error)
- func (f *Framework) UpdateThanosRulerAndWaitUntilReady(ctx context.Context, ns string, tr *monitoringv1.ThanosRuler) (*monitoringv1.ThanosRuler, error)
- func (f *Framework) WaitForActiveTargets(ctx context.Context, ns, svcName string, amount int) error
- func (f *Framework) WaitForAlertmanagerConfigToBeReloaded(ctx context.Context, ns, amName string, previousReloadTimestamp time.Time) error
- func (f *Framework) WaitForAlertmanagerConfigToContainString(ctx context.Context, ns, amName, expected string) error
- func (f *Framework) WaitForAlertmanagerInitialized(ctx context.Context, ns, name string, amountPeers int, ...) error
- func (f *Framework) WaitForAlertmanagerReady(ctx context.Context, ns, name string, replicas int, ...) error
- func (f *Framework) WaitForConfigMapExist(ctx context.Context, ns, name string) (*v1.ConfigMap, error)
- func (f *Framework) WaitForConfigMapNotExist(ctx context.Context, ns, name string) error
- func (f *Framework) WaitForDiscoveryWorking(ctx context.Context, ns, svcName, prometheusName string) error
- func (f *Framework) WaitForHealthyTargets(ctx context.Context, ns, svcName string, amount int) error
- func (f *Framework) WaitForPodsReady(ctx context.Context, namespace string, timeout time.Duration, ...) error
- func (f *Framework) WaitForPodsRunImage(ctx context.Context, namespace string, expectedReplicas int, image string, ...) error
- func (f *Framework) WaitForPrometheusFiringAlert(ctx context.Context, ns, svcName, alertName string) error
- func (f *Framework) WaitForPrometheusReady(ctx context.Context, p *monitoringv1.Prometheus, timeout time.Duration) error
- func (f *Framework) WaitForPrometheusRunImageAndReady(ctx context.Context, ns string, p *monitoringv1.Prometheus) error
- func (f *Framework) WaitForRule(ctx context.Context, ns, name string) error
- func (f *Framework) WaitForServiceReady(ctx context.Context, namespace string, serviceName string) error
- func (f *Framework) WaitForThanosFiringAlert(ctx context.Context, ns, svcName, alertName string) error
- func (f *Framework) WaitForThanosRulerReady(tr *monitoringv1.ThanosRuler, timeout time.Duration) error
- func (f *Framework) WaitUntilDeploymentGone(ctx context.Context, kubeClient kubernetes.Interface, namespace, name string, ...) error
- type Key
- type PromRemoteWriteTestConfig
- type PrometheusQueryAPIResponse
- type PrometheusQueryData
- type PrometheusQueryResult
- type Target
- type TestCtx
- type ThanosAlert
- type ThanosAlertsAPIResponse
- type ThanosAlertsData
Constants ¶
const ( SECRET = 0 CONFIGMAP = 1 )
Variables ¶
var ( CRDCreateRule = rbacv1.PolicyRule{ APIGroups: []string{"apiextensions.k8s.io"}, Resources: []string{"customresourcedefinitions"}, Verbs: []string{"create"}, } CRDMonitoringRule = rbacv1.PolicyRule{ APIGroups: []string{"apiextensions.k8s.io"}, Resources: []string{"customresourcedefinitions"}, ResourceNames: []string{ "alertmanagers.monitoring.coreos.com", "podmonitors.monitoring.coreos.com", "probes.monitoring.coreos.com", "prometheuses.monitoring.coreos.com", "prometheusrules.monitoring.coreos.com", "servicemonitors.monitoring.coreos.com", "thanosrulers.monitoring.coreos.com", }, Verbs: []string{"get", "update"}, } )
var ValidAlertmanagerConfig = `` /* 229-byte string literal not displayed */
Functions ¶
func MakeBasicIngress ¶
func MakeConfigMapWithCert ¶ added in v0.42.0
func MakeDeployment ¶
func MakeDeployment(pathToYaml string) (*appsv1.Deployment, error)
func MakeSecretWithCert ¶ added in v0.42.0
func StartPortForward ¶ added in v0.49.0
func StartPortForward(config *rest.Config, scheme string, name string, ns string, port string) error
StartPortForward initiates a port forwarding connection to a pod on the localhost interface.
StartPortForward blocks until the port forwarding proxy server is ready to receive connections.
func WaitForCRDReady ¶ added in v0.42.0
WaitForCRDReady waits for a Custom Resource Definition to be available for use.
Types ¶
type ExecOptions ¶ added in v0.44.0
type ExecOptions struct {
Command []string
Namespace string
PodName string
ContainerName string
Stdin io.Reader
CaptureStdout bool
CaptureStderr bool
// If false, whitespace in std{err,out} will be removed.
PreserveWhitespace bool
}
ExecOptions passed to ExecWithOptions
type FinalizerFn ¶ added in v0.47.0
type FinalizerFn func() error
type Framework ¶
type Framework struct {
KubeClient kubernetes.Interface
MonClientV1 v1monitoringclient.MonitoringV1Interface
MonClientV1alpha1 v1alpha1monitoringclient.MonitoringV1alpha1Interface
APIServerClient apiclient.Interface
HTTPClient *http.Client
MasterHost string
DefaultTimeout time.Duration
RestConfig *rest.Config
}
func (*Framework) AddAlertingToPrometheus ¶
func (f *Framework) AddAlertingToPrometheus(p *monitoringv1.Prometheus, ns, name string)
func (*Framework) AddLabelsToNamespace ¶ added in v0.49.0
func (*Framework) AddRemoteWriteWithTLSToPrometheus ¶ added in v0.42.0
func (f *Framework) AddRemoteWriteWithTLSToPrometheus(p *monitoringv1.Prometheus, url string, prwtc PromRemoteWriteTestConfig)
func (*Framework) AlertmanagerConfigSecret ¶
func (*Framework) CheckPrometheusFiringAlert ¶ added in v0.24.0
func (*Framework) CheckThanosFiringAlert ¶ added in v0.48.0
func (*Framework) CreateAlertmanagerAndWaitUntilReady ¶
func (f *Framework) CreateAlertmanagerAndWaitUntilReady(ctx context.Context, ns string, a *monitoringv1.Alertmanager) (*monitoringv1.Alertmanager, error)
func (*Framework) CreateBlackBoxExporterAndWaitUntilReady ¶ added in v0.42.0
func (*Framework) CreateCRD ¶ added in v0.42.0
CreateCRD creates a custom resource definition on the apiserver.
func (*Framework) CreateCRDAndWaitUntilReady ¶ added in v0.42.0
func (f *Framework) CreateCRDAndWaitUntilReady(ctx context.Context, crdName string, listFunc func(opts metav1.ListOptions) (runtime.Object, error)) error
CreateCRDAndWaitUntilReady creates a Custom Resource Definition from yaml manifest on the apiserver and wait until it is available for use.
func (*Framework) CreateClusterRole ¶ added in v0.49.0
func (*Framework) CreateDeployment ¶ added in v0.49.0
func (*Framework) CreateIngress ¶ added in v0.49.0
func (*Framework) CreateNamespace ¶ added in v0.49.0
func (*Framework) CreatePrometheusAndWaitUntilReady ¶
func (f *Framework) CreatePrometheusAndWaitUntilReady(ctx context.Context, ns string, p *monitoringv1.Prometheus) (*monitoringv1.Prometheus, error)
func (*Framework) CreatePrometheusOperator ¶ added in v0.24.0
func (f *Framework) CreatePrometheusOperator(ctx context.Context, ns, opImage string, namespaceAllowlist, namespaceDenylist, prometheusInstanceNamespaces, alertmanagerInstanceNamespaces []string, createResourceAdmissionHooks, createClusterRoleBindings bool) ([]FinalizerFn, error)
CreatePrometheusOperator creates a Prometheus Operator Kubernetes Deployment inside the specified namespace using the specified operator image. In addition one can specify the namespaces to watch, which defaults to all namespaces. Returns the CA, which can bs used to access the operator over TLS
func (*Framework) CreateRoleBinding ¶ added in v0.49.0
func (*Framework) CreateRoleBindingForSubjectNamespace ¶ added in v0.49.0
func (*Framework) CreateRule ¶ added in v0.20.0
func (f *Framework) CreateRule(ctx context.Context, ns string, ar *monitoringv1.PrometheusRule) (*monitoringv1.PrometheusRule, error)
func (*Framework) CreateSecretWithCert ¶ added in v0.49.0
func (*Framework) CreateServiceAndWaitUntilReady ¶ added in v0.49.0
func (*Framework) CreateSilence ¶ added in v0.18.1
func (*Framework) CreateThanosRulerAndWaitUntilReady ¶ added in v0.42.0
func (f *Framework) CreateThanosRulerAndWaitUntilReady(ctx context.Context, ns string, tr *monitoringv1.ThanosRuler) (*monitoringv1.ThanosRuler, error)
func (*Framework) DeleteAlertmanagerAndWaitUntilGone ¶
func (*Framework) DeleteClusterRole ¶ added in v0.49.0
func (*Framework) DeleteClusterRoleBinding ¶ added in v0.49.0
func (*Framework) DeleteDeployment ¶ added in v0.49.0
func (*Framework) DeleteNamespace ¶ added in v0.49.0
func (*Framework) DeleteNginxIngressControllerIncDefaultBackend ¶ added in v0.49.0
func (*Framework) DeletePrometheusAndWaitUntilGone ¶
func (*Framework) DeleteRoleBinding ¶ added in v0.49.0
func (*Framework) DeleteRule ¶ added in v0.22.0
func (*Framework) DeleteServiceAccount ¶ added in v0.49.0
func (*Framework) DeleteServiceAndWaitUntilGone ¶ added in v0.49.0
func (*Framework) DeleteThanosRulerAndWaitUntilGone ¶ added in v0.42.0
func (*Framework) ExecWithOptions ¶ added in v0.44.0
func (f *Framework) ExecWithOptions(options ExecOptions) (string, string, error)
ExecWithOptions executes a command in the specified container, returning stdout, stderr and error. `options` allowed for additional parameters to be passed. Inspired by https://github.com/kubernetes/kubernetes/blob/dde6e8e7465468c32642659cb708a5cc922add64/test/e2e/framework/exec_util.go#L36-L51
func (*Framework) GetActiveTargets ¶
func (*Framework) GetAlertmanagerMetrics ¶ added in v0.42.0
func (*Framework) GetAlertmanagerStatus ¶ added in v0.29.0
func (*Framework) GetCRD ¶ added in v0.42.0
GetCRD gets a custom resource definition from the apiserver.
func (*Framework) GetDeployment ¶ added in v0.49.0
func (*Framework) GetHealthyTargets ¶ added in v0.42.0
func (*Framework) GetIngressIP ¶ added in v0.49.0
func (*Framework) GetPodRestartCount ¶ added in v0.24.0
func (f *Framework) GetPodRestartCount(ctx context.Context, ns, podName string) (map[string]int32, error)
GetPodRestartCount returns a map of container names and their restart counts for a given pod.
func (*Framework) GetRule ¶ added in v0.42.0
func (f *Framework) GetRule(ctx context.Context, ns, name string) (*monitoringv1.PrometheusRule, error)
func (*Framework) GetSilences ¶ added in v0.18.1
func (*Framework) ListCRDs ¶ added in v0.42.0
ListCRDs gets a list of custom resource definitions from the apiserver.
func (*Framework) MakeAlertmanagerService ¶
func (*Framework) MakeAndCreateFiringRule ¶ added in v0.20.0
func (f *Framework) MakeAndCreateFiringRule(ctx context.Context, ns, name, alertName string) (*monitoringv1.PrometheusRule, error)
func (*Framework) MakeAndCreateInvalidRule ¶ added in v0.42.0
func (f *Framework) MakeAndCreateInvalidRule(ctx context.Context, ns, name, alertName string) (*monitoringv1.PrometheusRule, error)
func (*Framework) MakeBasicAlertmanager ¶
func (f *Framework) MakeBasicAlertmanager(name string, replicas int32) *monitoringv1.Alertmanager
func (*Framework) MakeBasicPodMonitor ¶ added in v0.43.0
func (f *Framework) MakeBasicPodMonitor(name string) *monitoringv1.PodMonitor
func (*Framework) MakeBasicPrometheus ¶
func (f *Framework) MakeBasicPrometheus(ns, name, group string, replicas int32) *monitoringv1.Prometheus
func (*Framework) MakeBasicRule ¶ added in v0.20.0
func (f *Framework) MakeBasicRule(ns, name string, groups []monitoringv1.RuleGroup) *monitoringv1.PrometheusRule
func (*Framework) MakeBasicServiceMonitor ¶
func (f *Framework) MakeBasicServiceMonitor(name string) *monitoringv1.ServiceMonitor
func (*Framework) MakeBasicStaticProbe ¶ added in v0.42.0
func (f *Framework) MakeBasicStaticProbe(name, url string, targets []string) *monitoringv1.Probe
func (*Framework) MakeBasicThanosRuler ¶ added in v0.42.0
func (f *Framework) MakeBasicThanosRuler(name string, replicas int32, queryEndpoint string) *monitoringv1.ThanosRuler
func (*Framework) MakeBlackBoxExporterService ¶ added in v0.42.0
func (*Framework) MakeCRD ¶ added in v0.42.0
func (f *Framework) MakeCRD(pathToYaml string) (*v1.CustomResourceDefinition, error)
MakeCRD creates a CustomResourceDefinition object from yaml manifest.
func (*Framework) MakeEchoDeployment ¶ added in v0.42.0
func (f *Framework) MakeEchoDeployment(group string) *appsv1.Deployment
func (*Framework) MakeEchoService ¶ added in v0.42.0
func (*Framework) MakePrometheusService ¶
func (*Framework) MakeThanosQuerierService ¶ added in v0.21.0
func (*Framework) MakeThanosRulerService ¶ added in v0.48.0
func (*Framework) PollAlertmanagerConfiguration ¶ added in v0.48.0
func (f *Framework) PollAlertmanagerConfiguration(ctx context.Context, ns, amName string, conditions ...func(config string) error) error
PollAlertmanagerConfiguration retrieves the Alertmanager configuration via the Alertmanager's API and checks that all conditions return without error. It will retry every 10 second for 5 minutes before giving up.
func (*Framework) PrintEvents ¶ added in v0.22.0
PrintEvents prints the Kubernetes events to standard out.
func (*Framework) PrintPodLogs ¶ added in v0.22.0
PrintPodLogs prints the logs of a specified Pod
func (*Framework) PrintPrometheusLogs ¶ added in v0.43.0
func (f *Framework) PrintPrometheusLogs(ctx context.Context, t *testing.T, p *monitoringv1.Prometheus)
PrintPrometheusLogs prints the logs for each Prometheus replica.
func (*Framework) PrometheusQuery ¶ added in v0.51.0
func (f *Framework) PrometheusQuery(ns, svcName, query string) ([]PrometheusQueryResult, error)
func (*Framework) PrometheusSVCGetRequest ¶ added in v0.42.0
func (*Framework) ProxyGetPod ¶ added in v0.49.0
func (*Framework) ProxyPostPod ¶ added in v0.49.0
func (*Framework) RemoveLabelsFromNamespace ¶ added in v0.49.0
func (*Framework) SecretFromYaml ¶
func (*Framework) SendAlertToAlertmanager ¶ added in v0.24.0
SendAlertToAlertmanager sends an alert to the alertmanager in the given namespace (ns) with the given name (n).
func (*Framework) SetupNginxIngressControllerIncDefaultBackend ¶ added in v0.49.0
func (*Framework) SetupPrometheusRBAC ¶ added in v0.49.0
func (*Framework) SetupPrometheusRBACGlobal ¶ added in v0.49.0
func (*Framework) ThanosSVCGetRequest ¶ added in v0.48.0
func (*Framework) UpdateAlertmanagerAndWaitUntilReady ¶
func (f *Framework) UpdateAlertmanagerAndWaitUntilReady(ctx context.Context, ns string, a *monitoringv1.Alertmanager) (*monitoringv1.Alertmanager, error)
func (*Framework) UpdateClusterRole ¶ added in v0.49.0
func (*Framework) UpdateDeployment ¶ added in v0.49.0
func (f *Framework) UpdateDeployment(ctx context.Context, deployment *appsv1.Deployment) (*appsv1.Deployment, error)
func (*Framework) UpdatePrometheusAndWaitUntilReady ¶
func (f *Framework) UpdatePrometheusAndWaitUntilReady(ctx context.Context, ns string, p *monitoringv1.Prometheus) (*monitoringv1.Prometheus, error)
func (*Framework) UpdateRule ¶ added in v0.20.0
func (f *Framework) UpdateRule(ctx context.Context, ns string, ar *monitoringv1.PrometheusRule) (*monitoringv1.PrometheusRule, error)
func (*Framework) UpdateThanosRulerAndWaitUntilReady ¶ added in v0.42.0
func (f *Framework) UpdateThanosRulerAndWaitUntilReady(ctx context.Context, ns string, tr *monitoringv1.ThanosRuler) (*monitoringv1.ThanosRuler, error)
func (*Framework) WaitForActiveTargets ¶ added in v0.42.0
WaitForActiveTargets waits for a number of targets to be configured.
func (*Framework) WaitForAlertmanagerConfigToBeReloaded ¶ added in v0.42.0
func (*Framework) WaitForAlertmanagerConfigToContainString ¶ added in v0.20.0
func (*Framework) WaitForAlertmanagerInitialized ¶ added in v0.42.0
func (*Framework) WaitForAlertmanagerReady ¶
func (f *Framework) WaitForAlertmanagerReady(ctx context.Context, ns, name string, replicas int, forceEnableClusterMode bool) error
WaitForAlertmanagerReady waits for each individual pod as well as the cluster as a whole to be ready.
func (*Framework) WaitForConfigMapExist ¶ added in v0.20.0
func (*Framework) WaitForConfigMapNotExist ¶ added in v0.20.0
func (*Framework) WaitForDiscoveryWorking ¶ added in v0.42.0
func (*Framework) WaitForHealthyTargets ¶ added in v0.42.0
func (f *Framework) WaitForHealthyTargets(ctx context.Context, ns, svcName string, amount int) error
WaitForHealthyTargets waits for a number of targets to be configured and healthy.
func (*Framework) WaitForPodsReady ¶ added in v0.49.0
func (f *Framework) WaitForPodsReady(ctx context.Context, namespace string, timeout time.Duration, expectedReplicas int, opts metav1.ListOptions) error
WaitForPodsReady waits for a selection of Pods to be running and each container to pass its readiness check.
func (*Framework) WaitForPodsRunImage ¶ added in v0.49.0
func (*Framework) WaitForPrometheusFiringAlert ¶ added in v0.19.0
func (*Framework) WaitForPrometheusReady ¶
func (f *Framework) WaitForPrometheusReady(ctx context.Context, p *monitoringv1.Prometheus, timeout time.Duration) error
func (*Framework) WaitForPrometheusRunImageAndReady ¶
func (f *Framework) WaitForPrometheusRunImageAndReady(ctx context.Context, ns string, p *monitoringv1.Prometheus) error
func (*Framework) WaitForRule ¶ added in v0.20.0
WaitForRule waits for a rule file with a given name to exist in a given namespace.
func (*Framework) WaitForServiceReady ¶ added in v0.49.0
func (*Framework) WaitForThanosFiringAlert ¶ added in v0.48.0
func (*Framework) WaitForThanosRulerReady ¶ added in v0.42.0
func (f *Framework) WaitForThanosRulerReady(tr *monitoringv1.ThanosRuler, timeout time.Duration) error
type PromRemoteWriteTestConfig ¶ added in v0.42.0
type PrometheusQueryAPIResponse ¶ added in v0.42.0
type PrometheusQueryAPIResponse struct {
Status string `json:"status"`
Data *PrometheusQueryData `json:"data"`
}
type PrometheusQueryData ¶ added in v0.42.0
type PrometheusQueryData struct {
ResultType string `json:"resultType"`
Result []PrometheusQueryResult `json:"result"`
}
type PrometheusQueryResult ¶ added in v0.42.0
type TestCtx ¶
type TestCtx struct {
ID string
// contains filtered or unexported fields
}
func (*TestCtx) AddFinalizerFn ¶
func (ctx *TestCtx) AddFinalizerFn(fn FinalizerFn)
type ThanosAlert ¶ added in v0.48.0
type ThanosAlertsAPIResponse ¶ added in v0.48.0
type ThanosAlertsAPIResponse struct {
Status string `json:"status"`
Data *ThanosAlertsData `json:"data"`
}
type ThanosAlertsData ¶ added in v0.48.0
type ThanosAlertsData struct {
Alerts []ThanosAlert `json:"alerts"`
}
Source Files
¶
- admission-webhooks.go
- alertmanager.go
- cluster_role.go
- cluster_role_binding.go
- config_map.go
- context.go
- crd.go
- deployment.go
- event.go
- framework.go
- helpers.go
- ingress.go
- namespace.go
- pod.go
- probe.go
- prometheus.go
- prometheus_rule.go
- replication-controller.go
- role-binding.go
- secret.go
- service.go
- service_account.go
- thanosruler.go