mirror of
https://github.com/prometheus-operator/prometheus-operator.git
synced 2025-04-21 11:48:53 +00:00
*: various prefix name fixes
This commit is contained in:
parent
c483e833b4
commit
9545b98bcc
13 changed files with 146 additions and 73 deletions
4
Makefile
4
Makefile
|
@ -18,14 +18,14 @@ e2e-test:
|
|||
go test -timeout 20m -v ./test/e2e/ $(TEST_RUN_ARGS) --kubeconfig "$(HOME)/.kube/config" --operator-image=quay.io/coreos/prometheus-operator:$(TAG) --namespace=$(NAMESPACE) --cluster-ip=$(CLUSTER_IP)
|
||||
|
||||
e2e-status:
|
||||
kubectl get prometheus,alertmanager,servicemonitor,statefulsets,deploy,svc,endpoints,pods --all-namespaces
|
||||
kubectl get prometheus,alertmanager,servicemonitor,statefulsets,deploy,svc,endpoints,pods,cm --all-namespaces
|
||||
|
||||
e2e:
|
||||
$(MAKE) container
|
||||
$(MAKE) e2e-test
|
||||
|
||||
clean-e2e:
|
||||
kubectl -n $(NAMESPACE) delete prometheus,alertmanager,servicemonitor,statefulsets,deploy,svc,endpoints,pods --all
|
||||
kubectl -n $(NAMESPACE) delete prometheus,alertmanager,servicemonitor,statefulsets,deploy,svc,endpoints,pods,cm --all
|
||||
kubectl delete namespace $(NAMESPACE)
|
||||
|
||||
.PHONY: all build container e2e clean-e2e
|
||||
|
|
|
@ -11,4 +11,4 @@ spec:
|
|||
protocol: TCP
|
||||
targetPort: web
|
||||
selector:
|
||||
alertmanager: alertmanager-main
|
||||
alertmanager: main
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
apiVersion: "monitoring.coreos.com/v1alpha1"
|
||||
kind: "Alertmanager"
|
||||
metadata:
|
||||
name: "alertmanager-main"
|
||||
name: "main"
|
||||
labels:
|
||||
alertmanager: "main"
|
||||
spec:
|
||||
|
|
|
@ -11,4 +11,4 @@ spec:
|
|||
protocol: TCP
|
||||
targetPort: web
|
||||
selector:
|
||||
prometheus: prometheus-main
|
||||
prometheus: main
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
apiVersion: "monitoring.coreos.com/v1alpha1"
|
||||
kind: "Prometheus"
|
||||
metadata:
|
||||
name: "prometheus-main"
|
||||
name: "main"
|
||||
labels:
|
||||
prometheus: "main"
|
||||
spec:
|
||||
|
|
|
@ -225,13 +225,14 @@ func (c *Operator) worker() {
|
|||
}
|
||||
}
|
||||
|
||||
func (c *Operator) alertmanagerForStatefulSet(ps interface{}) *v1alpha1.Alertmanager {
|
||||
key, ok := c.keyFunc(ps)
|
||||
func (c *Operator) alertmanagerForStatefulSet(sset interface{}) *v1alpha1.Alertmanager {
|
||||
key, ok := c.keyFunc(sset)
|
||||
if !ok {
|
||||
return nil
|
||||
}
|
||||
// Namespace/Name are one-to-one so the key will find the respective Alertmanager resource.
|
||||
a, exists, err := c.alrtInf.GetStore().GetByKey(key)
|
||||
|
||||
aKey := statefulSetKeyToAlertmanagerKey(key)
|
||||
a, exists, err := c.alrtInf.GetStore().GetByKey(aKey)
|
||||
if err != nil {
|
||||
utilruntime.HandleError(fmt.Errorf("get Alertmanager resource: %s", err))
|
||||
return nil
|
||||
|
@ -242,6 +243,20 @@ func (c *Operator) alertmanagerForStatefulSet(ps interface{}) *v1alpha1.Alertman
|
|||
return a.(*v1alpha1.Alertmanager)
|
||||
}
|
||||
|
||||
func alertmanagerNameFromStatefulSetName(name string) string {
|
||||
return strings.TrimPrefix(name, "alertmanager-")
|
||||
}
|
||||
|
||||
func statefulSetKeyToAlertmanagerKey(key string) string {
|
||||
keyParts := strings.Split(key, "/")
|
||||
return keyParts[0] + "/" + strings.TrimPrefix(keyParts[1], "alertmanager-")
|
||||
}
|
||||
|
||||
func alertmanagerKeyToStatefulSetKey(key string) string {
|
||||
keyParts := strings.Split(key, "/")
|
||||
return keyParts[0] + "/alertmanager-" + keyParts[1]
|
||||
}
|
||||
|
||||
func (c *Operator) handleAlertmanagerAdd(obj interface{}) {
|
||||
key, ok := c.keyFunc(obj)
|
||||
if !ok {
|
||||
|
@ -336,7 +351,7 @@ func (c *Operator) sync(key string) error {
|
|||
|
||||
ssetClient := c.kclient.Apps().StatefulSets(am.Namespace)
|
||||
// Ensure we have a StatefulSet running Alertmanager deployed.
|
||||
obj, exists, err = c.ssetInf.GetIndexer().GetByKey(key)
|
||||
obj, exists, err = c.ssetInf.GetIndexer().GetByKey(alertmanagerKeyToStatefulSetKey(key))
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
@ -433,7 +448,8 @@ func AlertmanagerStatus(kclient *kubernetes.Clientset, a *v1alpha1.Alertmanager)
|
|||
}
|
||||
|
||||
func (c *Operator) destroyAlertmanager(key string) error {
|
||||
obj, exists, err := c.ssetInf.GetStore().GetByKey(key)
|
||||
ssetKey := alertmanagerKeyToStatefulSetKey(key)
|
||||
obj, exists, err := c.ssetInf.GetStore().GetByKey(ssetKey)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
@ -455,7 +471,7 @@ func (c *Operator) destroyAlertmanager(key string) error {
|
|||
// TODO(fabxc): temporary solution until StatefulSet status provides necessary info to know
|
||||
// whether scale-down completed.
|
||||
for {
|
||||
pods, err := podClient.List(ListOptions(sset.Name))
|
||||
pods, err := podClient.List(ListOptions(alertmanagerNameFromStatefulSetName(sset.Name)))
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
|
|
@ -27,24 +27,31 @@ import (
|
|||
"github.com/coreos/prometheus-operator/pkg/client/monitoring/v1alpha1"
|
||||
)
|
||||
|
||||
const (
|
||||
governingServiceName = "alertmanager-operated"
|
||||
defaultBaseImage = "quay.io/prometheus/alertmanager"
|
||||
defaultVersion = "v0.5.1"
|
||||
minReplicas = 1
|
||||
)
|
||||
|
||||
func makeStatefulSet(am *v1alpha1.Alertmanager, old *v1beta1.StatefulSet) *v1beta1.StatefulSet {
|
||||
// TODO(fabxc): is this the right point to inject defaults?
|
||||
// Ideally we would do it before storing but that's currently not possible.
|
||||
// Potentially an update handler on first insertion.
|
||||
|
||||
if am.Spec.BaseImage == "" {
|
||||
am.Spec.BaseImage = "quay.io/prometheus/alertmanager"
|
||||
am.Spec.BaseImage = defaultBaseImage
|
||||
}
|
||||
if am.Spec.Version == "" {
|
||||
am.Spec.Version = "v0.5.1"
|
||||
am.Spec.Version = defaultVersion
|
||||
}
|
||||
if am.Spec.Replicas < 1 {
|
||||
am.Spec.Replicas = 1
|
||||
if am.Spec.Replicas < minReplicas {
|
||||
am.Spec.Replicas = minReplicas
|
||||
}
|
||||
|
||||
statefulset := &v1beta1.StatefulSet{
|
||||
ObjectMeta: v1.ObjectMeta{
|
||||
Name: fmt.Sprintf("alertmanager-%s", am.Name),
|
||||
Name: prefixedName(am.Name),
|
||||
Labels: am.ObjectMeta.Labels,
|
||||
Annotations: am.ObjectMeta.Annotations,
|
||||
},
|
||||
|
@ -52,7 +59,7 @@ func makeStatefulSet(am *v1alpha1.Alertmanager, old *v1beta1.StatefulSet) *v1bet
|
|||
}
|
||||
if vc := am.Spec.Storage; vc == nil {
|
||||
statefulset.Spec.Template.Spec.Volumes = append(statefulset.Spec.Template.Spec.Volumes, v1.Volume{
|
||||
Name: fmt.Sprintf("%s-db", am.Name),
|
||||
Name: volumeName(am.Name),
|
||||
VolumeSource: v1.VolumeSource{
|
||||
EmptyDir: &v1.EmptyDirVolumeSource{},
|
||||
},
|
||||
|
@ -60,7 +67,7 @@ func makeStatefulSet(am *v1alpha1.Alertmanager, old *v1beta1.StatefulSet) *v1bet
|
|||
} else {
|
||||
pvc := v1.PersistentVolumeClaim{
|
||||
ObjectMeta: v1.ObjectMeta{
|
||||
Name: fmt.Sprintf("%s-db", am.Name),
|
||||
Name: volumeName(am.Name),
|
||||
},
|
||||
Spec: v1.PersistentVolumeClaimSpec{
|
||||
AccessModes: []v1.PersistentVolumeAccessMode{v1.ReadWriteOnce},
|
||||
|
@ -85,7 +92,7 @@ func makeStatefulSet(am *v1alpha1.Alertmanager, old *v1beta1.StatefulSet) *v1bet
|
|||
func makeStatefulSetService(p *v1alpha1.Alertmanager) *v1.Service {
|
||||
svc := &v1.Service{
|
||||
ObjectMeta: v1.ObjectMeta{
|
||||
Name: "alertmanager-operated",
|
||||
Name: governingServiceName,
|
||||
},
|
||||
Spec: v1.ServiceSpec{
|
||||
ClusterIP: "None",
|
||||
|
@ -138,12 +145,12 @@ func makeStatefulSetSpec(a *v1alpha1.Alertmanager) v1beta1.StatefulSetSpec {
|
|||
}
|
||||
|
||||
for i := int32(0); i < a.Spec.Replicas; i++ {
|
||||
commands = append(commands, fmt.Sprintf("-mesh.peer=%s-%d.%s.%s.svc", a.Name, i, "alertmanager", a.Namespace))
|
||||
commands = append(commands, fmt.Sprintf("-mesh.peer=%s-%d.%s.%s.svc", prefixedName(a.Name), i, "alertmanager", a.Namespace))
|
||||
}
|
||||
|
||||
terminationGracePeriod := int64(0)
|
||||
return v1beta1.StatefulSetSpec{
|
||||
ServiceName: "alertmanager",
|
||||
ServiceName: governingServiceName,
|
||||
Replicas: &a.Spec.Replicas,
|
||||
Template: v1.PodTemplateSpec{
|
||||
ObjectMeta: v1.ObjectMeta{
|
||||
|
@ -177,7 +184,7 @@ func makeStatefulSetSpec(a *v1alpha1.Alertmanager) v1beta1.StatefulSetSpec {
|
|||
MountPath: "/etc/alertmanager/config",
|
||||
},
|
||||
{
|
||||
Name: fmt.Sprintf("%s-db", a.Name),
|
||||
Name: volumeName(a.Name),
|
||||
MountPath: "/var/alertmanager/data",
|
||||
SubPath: subPathForStorage(a.Spec.Storage),
|
||||
},
|
||||
|
@ -222,7 +229,7 @@ func makeStatefulSetSpec(a *v1alpha1.Alertmanager) v1beta1.StatefulSetSpec {
|
|||
VolumeSource: v1.VolumeSource{
|
||||
ConfigMap: &v1.ConfigMapVolumeSource{
|
||||
LocalObjectReference: v1.LocalObjectReference{
|
||||
Name: a.Name,
|
||||
Name: configConfigMapName(a.Name),
|
||||
},
|
||||
},
|
||||
},
|
||||
|
@ -233,6 +240,18 @@ func makeStatefulSetSpec(a *v1alpha1.Alertmanager) v1beta1.StatefulSetSpec {
|
|||
}
|
||||
}
|
||||
|
||||
func configConfigMapName(name string) string {
|
||||
return prefixedName(name)
|
||||
}
|
||||
|
||||
func volumeName(name string) string {
|
||||
return fmt.Sprintf("%s-db", prefixedName(name))
|
||||
}
|
||||
|
||||
func prefixedName(name string) string {
|
||||
return fmt.Sprintf("alertmanager-%s", name)
|
||||
}
|
||||
|
||||
func subPathForStorage(s *v1alpha1.StorageSpec) string {
|
||||
if s == nil {
|
||||
return ""
|
||||
|
|
|
@ -330,13 +330,14 @@ func (c *Operator) worker() {
|
|||
}
|
||||
}
|
||||
|
||||
func (c *Operator) prometheusForStatefulSet(ps interface{}) *v1alpha1.Prometheus {
|
||||
key, ok := c.keyFunc(ps)
|
||||
func (c *Operator) prometheusForStatefulSet(sset interface{}) *v1alpha1.Prometheus {
|
||||
key, ok := c.keyFunc(sset)
|
||||
if !ok {
|
||||
return nil
|
||||
}
|
||||
// Namespace/Name are one-to-one so the key will find the respective Prometheus resource.
|
||||
p, exists, err := c.promInf.GetStore().GetByKey(key)
|
||||
|
||||
promKey := statefulSetKeyToPrometheusKey(key)
|
||||
p, exists, err := c.promInf.GetStore().GetByKey(promKey)
|
||||
if err != nil {
|
||||
c.logger.Log("msg", "Prometheus lookup failed", "err", err)
|
||||
return nil
|
||||
|
@ -347,6 +348,20 @@ func (c *Operator) prometheusForStatefulSet(ps interface{}) *v1alpha1.Prometheus
|
|||
return p.(*v1alpha1.Prometheus)
|
||||
}
|
||||
|
||||
func prometheusNameFromStatefulSetName(name string) string {
|
||||
return strings.TrimPrefix(name, "prometheus-")
|
||||
}
|
||||
|
||||
func statefulSetKeyToPrometheusKey(key string) string {
|
||||
keyParts := strings.Split(key, "/")
|
||||
return keyParts[0] + "/" + strings.TrimPrefix(keyParts[1], "prometheus-")
|
||||
}
|
||||
|
||||
func prometheusKeyToStatefulSetKey(key string) string {
|
||||
keyParts := strings.Split(key, "/")
|
||||
return keyParts[0] + "/prometheus-" + keyParts[1]
|
||||
}
|
||||
|
||||
func (c *Operator) handleDeleteStatefulSet(obj interface{}) {
|
||||
if ps := c.prometheusForStatefulSet(obj); ps != nil {
|
||||
c.enqueue(ps)
|
||||
|
@ -426,7 +441,7 @@ func (c *Operator) sync(key string) error {
|
|||
|
||||
ssetClient := c.kclient.Apps().StatefulSets(p.Namespace)
|
||||
// Ensure we have a StatefulSet running Prometheus deployed.
|
||||
obj, exists, err = c.ssetInf.GetIndexer().GetByKey(key)
|
||||
obj, exists, err = c.ssetInf.GetIndexer().GetByKey(prometheusKeyToStatefulSetKey(key))
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
@ -523,7 +538,8 @@ func PrometheusStatus(kclient *kubernetes.Clientset, p *v1alpha1.Prometheus) (*v
|
|||
}
|
||||
|
||||
func (c *Operator) destroyPrometheus(key string) error {
|
||||
obj, exists, err := c.ssetInf.GetStore().GetByKey(key)
|
||||
ssetKey := prometheusKeyToStatefulSetKey(key)
|
||||
obj, exists, err := c.ssetInf.GetStore().GetByKey(ssetKey)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
@ -545,7 +561,7 @@ func (c *Operator) destroyPrometheus(key string) error {
|
|||
// TODO(fabxc): temprorary solution until StatefulSet status provides necessary info to know
|
||||
// whether scale-down completed.
|
||||
for {
|
||||
pods, err := podClient.List(ListOptions(sset.Name))
|
||||
pods, err := podClient.List(ListOptions(prometheusNameFromStatefulSetName(sset.Name)))
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
@ -587,7 +603,7 @@ func (c *Operator) createConfig(p *v1alpha1.Prometheus) error {
|
|||
|
||||
cm := &v1.ConfigMap{
|
||||
ObjectMeta: v1.ObjectMeta{
|
||||
Name: p.Name,
|
||||
Name: configConfigMapName(p.Name),
|
||||
},
|
||||
Data: map[string]string{
|
||||
"prometheus.yaml": string(b),
|
||||
|
@ -596,7 +612,7 @@ func (c *Operator) createConfig(p *v1alpha1.Prometheus) error {
|
|||
|
||||
cmClient := c.kclient.CoreV1().ConfigMaps(p.Namespace)
|
||||
|
||||
_, err = cmClient.Get(p.Name, metav1.GetOptions{})
|
||||
_, err = cmClient.Get(cm.Name, metav1.GetOptions{})
|
||||
if apierrors.IsNotFound(err) {
|
||||
_, err = cmClient.Create(cm)
|
||||
} else if err == nil {
|
||||
|
|
|
@ -27,22 +27,30 @@ import (
|
|||
"github.com/coreos/prometheus-operator/pkg/client/monitoring/v1alpha1"
|
||||
)
|
||||
|
||||
const (
|
||||
governingServiceName = "prometheus-operated"
|
||||
defaultBaseImage = "quay.io/prometheus/prometheus"
|
||||
defaultVersion = "v1.4.0"
|
||||
minReplicas = 1
|
||||
defaultRetention = "24h"
|
||||
)
|
||||
|
||||
func makeStatefulSet(p v1alpha1.Prometheus, old *v1beta1.StatefulSet) *v1beta1.StatefulSet {
|
||||
// TODO(fabxc): is this the right point to inject defaults?
|
||||
// Ideally we would do it before storing but that's currently not possible.
|
||||
// Potentially an update handler on first insertion.
|
||||
|
||||
if p.Spec.BaseImage == "" {
|
||||
p.Spec.BaseImage = "quay.io/prometheus/prometheus"
|
||||
p.Spec.BaseImage = defaultBaseImage
|
||||
}
|
||||
if p.Spec.Version == "" {
|
||||
p.Spec.Version = "v1.4.0"
|
||||
p.Spec.Version = defaultVersion
|
||||
}
|
||||
if p.Spec.Replicas < 1 {
|
||||
p.Spec.Replicas = 1
|
||||
if p.Spec.Replicas < minReplicas {
|
||||
p.Spec.Replicas = minReplicas
|
||||
}
|
||||
if p.Spec.Retention == "" {
|
||||
p.Spec.Retention = "24h"
|
||||
p.Spec.Retention = defaultRetention
|
||||
}
|
||||
|
||||
if p.Spec.Resources.Requests == nil {
|
||||
|
@ -54,7 +62,7 @@ func makeStatefulSet(p v1alpha1.Prometheus, old *v1beta1.StatefulSet) *v1beta1.S
|
|||
|
||||
statefulset := &v1beta1.StatefulSet{
|
||||
ObjectMeta: v1.ObjectMeta{
|
||||
Name: fmt.Sprintf("prometheus-%s", p.Name),
|
||||
Name: prefixedName(p.Name),
|
||||
Labels: p.ObjectMeta.Labels,
|
||||
Annotations: p.ObjectMeta.Annotations,
|
||||
},
|
||||
|
@ -62,7 +70,7 @@ func makeStatefulSet(p v1alpha1.Prometheus, old *v1beta1.StatefulSet) *v1beta1.S
|
|||
}
|
||||
if vc := p.Spec.Storage; vc == nil {
|
||||
statefulset.Spec.Template.Spec.Volumes = append(statefulset.Spec.Template.Spec.Volumes, v1.Volume{
|
||||
Name: fmt.Sprintf("%s-db", p.Name),
|
||||
Name: volumeName(p.Name),
|
||||
VolumeSource: v1.VolumeSource{
|
||||
EmptyDir: &v1.EmptyDirVolumeSource{},
|
||||
},
|
||||
|
@ -70,7 +78,7 @@ func makeStatefulSet(p v1alpha1.Prometheus, old *v1beta1.StatefulSet) *v1beta1.S
|
|||
} else {
|
||||
pvc := v1.PersistentVolumeClaim{
|
||||
ObjectMeta: v1.ObjectMeta{
|
||||
Name: fmt.Sprintf("%s-db", p.Name),
|
||||
Name: volumeName(p.Name),
|
||||
},
|
||||
Spec: v1.PersistentVolumeClaimSpec{
|
||||
AccessModes: []v1.PersistentVolumeAccessMode{v1.ReadWriteOnce},
|
||||
|
@ -95,7 +103,7 @@ func makeStatefulSet(p v1alpha1.Prometheus, old *v1beta1.StatefulSet) *v1beta1.S
|
|||
func makeEmptyConfig(name string) *v1.ConfigMap {
|
||||
return &v1.ConfigMap{
|
||||
ObjectMeta: v1.ObjectMeta{
|
||||
Name: fmt.Sprintf("%s", name),
|
||||
Name: configConfigMapName(name),
|
||||
},
|
||||
Data: map[string]string{
|
||||
"prometheus.yaml": "",
|
||||
|
@ -106,7 +114,7 @@ func makeEmptyConfig(name string) *v1.ConfigMap {
|
|||
func makeEmptyRules(name string) *v1.ConfigMap {
|
||||
return &v1.ConfigMap{
|
||||
ObjectMeta: v1.ObjectMeta{
|
||||
Name: fmt.Sprintf("%s-rules", name),
|
||||
Name: rulesConfigMapName(name),
|
||||
},
|
||||
}
|
||||
}
|
||||
|
@ -114,7 +122,7 @@ func makeEmptyRules(name string) *v1.ConfigMap {
|
|||
func makeStatefulSetService(p *v1alpha1.Prometheus) *v1.Service {
|
||||
svc := &v1.Service{
|
||||
ObjectMeta: v1.ObjectMeta{
|
||||
Name: "prometheus-operated",
|
||||
Name: governingServiceName,
|
||||
},
|
||||
Spec: v1.ServiceSpec{
|
||||
ClusterIP: "None",
|
||||
|
@ -209,7 +217,7 @@ func makeStatefulSetSpec(p v1alpha1.Prometheus) v1beta1.StatefulSetSpec {
|
|||
MountPath: "/etc/prometheus/rules",
|
||||
},
|
||||
{
|
||||
Name: fmt.Sprintf("%s-db", p.Name),
|
||||
Name: volumeName(p.Name),
|
||||
MountPath: "/var/prometheus/data",
|
||||
SubPath: subPathForStorage(p.Spec.Storage),
|
||||
},
|
||||
|
@ -264,7 +272,7 @@ func makeStatefulSetSpec(p v1alpha1.Prometheus) v1beta1.StatefulSetSpec {
|
|||
VolumeSource: v1.VolumeSource{
|
||||
ConfigMap: &v1.ConfigMapVolumeSource{
|
||||
LocalObjectReference: v1.LocalObjectReference{
|
||||
Name: p.Name,
|
||||
Name: configConfigMapName(p.Name),
|
||||
},
|
||||
},
|
||||
},
|
||||
|
@ -274,7 +282,7 @@ func makeStatefulSetSpec(p v1alpha1.Prometheus) v1beta1.StatefulSetSpec {
|
|||
VolumeSource: v1.VolumeSource{
|
||||
ConfigMap: &v1.ConfigMapVolumeSource{
|
||||
LocalObjectReference: v1.LocalObjectReference{
|
||||
Name: fmt.Sprintf("%s-rules", p.Name),
|
||||
Name: rulesConfigMapName(p.Name),
|
||||
},
|
||||
},
|
||||
},
|
||||
|
@ -285,6 +293,22 @@ func makeStatefulSetSpec(p v1alpha1.Prometheus) v1beta1.StatefulSetSpec {
|
|||
}
|
||||
}
|
||||
|
||||
func configConfigMapName(name string) string {
|
||||
return prefixedName(name)
|
||||
}
|
||||
|
||||
func rulesConfigMapName(name string) string {
|
||||
return fmt.Sprintf("%s-rules", prefixedName(name))
|
||||
}
|
||||
|
||||
func volumeName(name string) string {
|
||||
return fmt.Sprintf("%s-db", prefixedName(name))
|
||||
}
|
||||
|
||||
func prefixedName(name string) string {
|
||||
return fmt.Sprintf("prometheus-%s", name)
|
||||
}
|
||||
|
||||
func subPathForStorage(s *v1alpha1.StorageSpec) string {
|
||||
if s == nil {
|
||||
return ""
|
||||
|
|
|
@ -19,7 +19,7 @@ import (
|
|||
)
|
||||
|
||||
func TestAlertmanagerCreateDeleteCluster(t *testing.T) {
|
||||
name := "alertmanager-test"
|
||||
name := "test"
|
||||
|
||||
defer func() {
|
||||
if err := framework.DeleteAlertmanagerAndWaitUntilGone(name); err != nil {
|
||||
|
@ -33,7 +33,7 @@ func TestAlertmanagerCreateDeleteCluster(t *testing.T) {
|
|||
}
|
||||
|
||||
func TestAlertmanagerScaling(t *testing.T) {
|
||||
name := "alertmanager-test"
|
||||
name := "test"
|
||||
|
||||
defer func() {
|
||||
if err := framework.DeleteAlertmanagerAndWaitUntilGone(name); err != nil {
|
||||
|
@ -55,7 +55,7 @@ func TestAlertmanagerScaling(t *testing.T) {
|
|||
}
|
||||
|
||||
func TestAlertmanagerVersionMigration(t *testing.T) {
|
||||
name := "alertmanager-test"
|
||||
name := "test"
|
||||
|
||||
defer func() {
|
||||
if err := framework.DeleteAlertmanagerAndWaitUntilGone(name); err != nil {
|
||||
|
|
|
@ -55,7 +55,7 @@ func (f *Framework) MakeBasicAlertmanager(name string, replicas int32) *v1alpha1
|
|||
func (f *Framework) MakeAlertmanagerService(name, group string) *v1.Service {
|
||||
return &v1.Service{
|
||||
ObjectMeta: v1.ObjectMeta{
|
||||
Name: name,
|
||||
Name: fmt.Sprintf("alertmanager-%s", name),
|
||||
Labels: map[string]string{
|
||||
"group": group,
|
||||
},
|
||||
|
@ -82,7 +82,7 @@ func (f *Framework) CreateAlertmanagerAndWaitUntilReady(a *v1alpha1.Alertmanager
|
|||
_, err := f.KubeClient.CoreV1().ConfigMaps(f.Namespace.Name).Create(
|
||||
&v1.ConfigMap{
|
||||
ObjectMeta: v1.ObjectMeta{
|
||||
Name: a.Name,
|
||||
Name: fmt.Sprintf("alertmanager-%s", a.Name),
|
||||
},
|
||||
Data: map[string]string{
|
||||
"alertmanager.yaml": ValidAlertmanagerConfig,
|
||||
|
@ -135,7 +135,7 @@ func (f *Framework) DeleteAlertmanagerAndWaitUntilGone(name string) error {
|
|||
return fmt.Errorf("failed to teardown Alertmanager (%s) instances: %v", name, err)
|
||||
}
|
||||
|
||||
return f.KubeClient.CoreV1().ConfigMaps(f.Namespace.Name).Delete(name, nil)
|
||||
return f.KubeClient.CoreV1().ConfigMaps(f.Namespace.Name).Delete(fmt.Sprintf("alertmanager-%s", name), nil)
|
||||
}
|
||||
|
||||
func amImage(version string) string {
|
||||
|
|
|
@ -55,7 +55,7 @@ func (f *Framework) AddAlertingToPrometheus(p *v1alpha1.Prometheus, name string)
|
|||
Alertmanagers: []v1alpha1.AlertmanagerEndpoints{
|
||||
v1alpha1.AlertmanagerEndpoints{
|
||||
Namespace: f.Namespace.Name,
|
||||
Name: name,
|
||||
Name: fmt.Sprintf("alertmanager-%s", name),
|
||||
Port: intstr.FromString("web"),
|
||||
},
|
||||
},
|
||||
|
@ -89,7 +89,7 @@ func (f *Framework) MakeBasicServiceMonitor(name string) *v1alpha1.ServiceMonito
|
|||
func (f *Framework) MakePrometheusService(name, group string) *v1.Service {
|
||||
return &v1.Service{
|
||||
ObjectMeta: v1.ObjectMeta{
|
||||
Name: name,
|
||||
Name: fmt.Sprintf("prometheus-%s", name),
|
||||
Labels: map[string]string{
|
||||
"group": group,
|
||||
},
|
||||
|
|
|
@ -31,21 +31,19 @@ import (
|
|||
)
|
||||
|
||||
func TestPrometheusCreateDeleteCluster(t *testing.T) {
|
||||
name := "prometheus-test"
|
||||
|
||||
defer func() {
|
||||
if err := framework.DeletePrometheusAndWaitUntilGone(name); err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
}()
|
||||
name := "test"
|
||||
|
||||
if err := framework.CreatePrometheusAndWaitUntilReady(framework.MakeBasicPrometheus(name, name, 1)); err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
if err := framework.DeletePrometheusAndWaitUntilGone(name); err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
}
|
||||
|
||||
func TestPrometheusScaleUpDownCluster(t *testing.T) {
|
||||
name := "prometheus-test"
|
||||
name := "test"
|
||||
|
||||
defer func() {
|
||||
if err := framework.DeletePrometheusAndWaitUntilGone(name); err != nil {
|
||||
|
@ -67,7 +65,7 @@ func TestPrometheusScaleUpDownCluster(t *testing.T) {
|
|||
}
|
||||
|
||||
func TestPrometheusVersionMigration(t *testing.T) {
|
||||
name := "prometheus-test"
|
||||
name := "test"
|
||||
|
||||
defer func() {
|
||||
if err := framework.DeletePrometheusAndWaitUntilGone(name); err != nil {
|
||||
|
@ -94,7 +92,7 @@ func TestPrometheusVersionMigration(t *testing.T) {
|
|||
}
|
||||
|
||||
func TestPrometheusDiscovery(t *testing.T) {
|
||||
prometheusName := "prometheus-test"
|
||||
prometheusName := "test"
|
||||
group := "servicediscovery-test"
|
||||
|
||||
defer func() {
|
||||
|
@ -104,7 +102,7 @@ func TestPrometheusDiscovery(t *testing.T) {
|
|||
if err := framework.MonClient.ServiceMonitors(framework.Namespace.Name).Delete(group, nil); err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
if err := framework.KubeClient.CoreV1().Services(framework.Namespace.Name).Delete(prometheusName, nil); err != nil {
|
||||
if err := framework.KubeClient.CoreV1().Services(framework.Namespace.Name).Delete(fmt.Sprintf("prometheus-%s", prometheusName), nil); err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
}()
|
||||
|
@ -128,7 +126,7 @@ func TestPrometheusDiscovery(t *testing.T) {
|
|||
}
|
||||
|
||||
log.Print("Validating Prometheus ConfigMap was created")
|
||||
_, err := framework.KubeClient.CoreV1().ConfigMaps(framework.Namespace.Name).Get(prometheusName, metav1.GetOptions{})
|
||||
_, err := framework.KubeClient.CoreV1().ConfigMaps(framework.Namespace.Name).Get(fmt.Sprintf("prometheus-%s", prometheusName), metav1.GetOptions{})
|
||||
if err != nil {
|
||||
t.Fatalf("Generated ConfigMap could not be retrieved: %s", err)
|
||||
}
|
||||
|
@ -141,15 +139,15 @@ func TestPrometheusDiscovery(t *testing.T) {
|
|||
}
|
||||
|
||||
func TestPrometheusAlertmanagerDiscovery(t *testing.T) {
|
||||
prometheusName := "prometheus-test"
|
||||
alertmanagerName := "alertmanager-test"
|
||||
prometheusName := "test"
|
||||
alertmanagerName := "test"
|
||||
group := "servicediscovery-test"
|
||||
|
||||
defer func() {
|
||||
if err := framework.DeleteAlertmanagerAndWaitUntilGone(alertmanagerName); err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
if err := framework.KubeClient.CoreV1().Services(framework.Namespace.Name).Delete(alertmanagerName, nil); err != nil {
|
||||
if err := framework.KubeClient.CoreV1().Services(framework.Namespace.Name).Delete(fmt.Sprintf("alertmanager-%s", alertmanagerName), nil); err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
if err := framework.DeletePrometheusAndWaitUntilGone(prometheusName); err != nil {
|
||||
|
@ -158,7 +156,7 @@ func TestPrometheusAlertmanagerDiscovery(t *testing.T) {
|
|||
if err := framework.MonClient.ServiceMonitors(framework.Namespace.Name).Delete(group, nil); err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
if err := framework.KubeClient.CoreV1().Services(framework.Namespace.Name).Delete(prometheusName, nil); err != nil {
|
||||
if err := framework.KubeClient.CoreV1().Services(framework.Namespace.Name).Delete(fmt.Sprintf("prometheus-%s", prometheusName), nil); err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
}()
|
||||
|
@ -183,7 +181,7 @@ func TestPrometheusAlertmanagerDiscovery(t *testing.T) {
|
|||
}
|
||||
|
||||
log.Print("Validating Prometheus ConfigMap was created")
|
||||
_, err := framework.KubeClient.CoreV1().ConfigMaps(framework.Namespace.Name).Get(prometheusName, metav1.GetOptions{})
|
||||
_, err := framework.KubeClient.CoreV1().ConfigMaps(framework.Namespace.Name).Get(fmt.Sprintf("prometheus-%s", prometheusName), metav1.GetOptions{})
|
||||
if err != nil {
|
||||
t.Fatalf("Generated ConfigMap could not be retrieved: %s", err)
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue