Skip to content

Commit 22027ca

Browse files
authored
Merge pull request #236 from SomtochiAma/suspend-metrics
Record suspension metrics
2 parents 82c43d4 + e2c5dda commit 22027ca

File tree

5 files changed

+28
-6
lines changed

5 files changed

+28
-6
lines changed

api/go.mod

+1-1
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ go 1.15
55
require (
66
github.com/fluxcd/pkg/apis/kustomize v0.0.1
77
github.com/fluxcd/pkg/apis/meta v0.8.0
8-
github.com/fluxcd/pkg/runtime v0.8.4
8+
github.com/fluxcd/pkg/runtime v0.8.5
99
k8s.io/apiextensions-apiserver v0.20.2
1010
k8s.io/apimachinery v0.20.2
1111
sigs.k8s.io/controller-runtime v0.8.3

api/go.sum

+2-2
Original file line numberDiff line numberDiff line change
@@ -92,8 +92,8 @@ github.com/fluxcd/pkg/apis/kustomize v0.0.1 h1:TkA80R0GopRY27VJqzKyS6ifiKIAfwBd7
9292
github.com/fluxcd/pkg/apis/kustomize v0.0.1/go.mod h1:JAFPfnRmcrAoG1gNiA8kmEXsnOBuDyZ/F5X4DAQcVV0=
9393
github.com/fluxcd/pkg/apis/meta v0.8.0 h1:wqWpUsxhKHB1ZztcvOz+vnyhdKW9cWmjFp8Vci/XOdk=
9494
github.com/fluxcd/pkg/apis/meta v0.8.0/go.mod h1:yHuY8kyGHYz22I0jQzqMMGCcHViuzC/WPdo9Gisk8Po=
95-
github.com/fluxcd/pkg/runtime v0.8.4 h1:amuhfoHGCUfFCPXg3Zrcyy7f9J+fho+/+FbQDDyewko=
96-
github.com/fluxcd/pkg/runtime v0.8.4/go.mod h1:JD0eZIn5xkTeHHQUWXSqJPIh/ecO0d0qrUKbSVHnpnw=
95+
github.com/fluxcd/pkg/runtime v0.8.5 h1:ynh8fszbLQ3QSisQBNOABEUTnvt+/QfCdaL6gOJQcoQ=
96+
github.com/fluxcd/pkg/runtime v0.8.5/go.mod h1:JD0eZIn5xkTeHHQUWXSqJPIh/ecO0d0qrUKbSVHnpnw=
9797
github.com/form3tech-oss/jwt-go v3.2.2+incompatible/go.mod h1:pbq4aXjuKjdthFRnoDwaVPLA+WlJuPGy+QneDUgJi2k=
9898
github.com/fsnotify/fsnotify v1.4.7/go.mod h1:jwhsz4b93w/PPRr/qN1Yymfu8t87LnFCMoQvtojpjFo=
9999
github.com/fsnotify/fsnotify v1.4.9 h1:hsms1Qyu0jgnwNXIxa+/V/PDsU6CfLf6CNO8H7IWoS4=

controllers/helmrelease_controller.go

+22
Original file line numberDiff line numberDiff line change
@@ -137,6 +137,9 @@ func (r *HelmReleaseReconciler) Reconcile(ctx context.Context, req ctrl.Request)
137137
return ctrl.Result{}, client.IgnoreNotFound(err)
138138
}
139139

140+
// record suspension metrics
141+
defer r.recordSuspension(ctx, hr)
142+
140143
// Add our finalizer if it does not exist
141144
if !controllerutil.ContainsFinalizer(&hr, v2.HelmReleaseFinalizer) {
142145
controllerutil.AddFinalizer(&hr, v2.HelmReleaseFinalizer)
@@ -731,6 +734,25 @@ func (r *HelmReleaseReconciler) event(ctx context.Context, hr v2.HelmRelease, re
731734
}
732735
}
733736

737+
func (r *HelmReleaseReconciler) recordSuspension(ctx context.Context, hr v2.HelmRelease) {
738+
if r.MetricsRecorder == nil {
739+
return
740+
}
741+
log := logr.FromContext(ctx)
742+
743+
objRef, err := reference.GetReference(r.Scheme, &hr)
744+
if err != nil {
745+
log.Error(err, "unable to record suspended metric")
746+
return
747+
}
748+
749+
if !hr.DeletionTimestamp.IsZero() {
750+
r.MetricsRecorder.RecordSuspend(*objRef, false)
751+
} else {
752+
r.MetricsRecorder.RecordSuspend(*objRef, hr.Spec.Suspend)
753+
}
754+
}
755+
734756
func (r *HelmReleaseReconciler) recordReadiness(ctx context.Context, hr v2.HelmRelease) {
735757
if r.MetricsRecorder == nil {
736758
return

go.mod

+1-1
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ require (
88
github.com/fluxcd/helm-controller/api v0.8.2
99
github.com/fluxcd/pkg/apis/kustomize v0.0.1
1010
github.com/fluxcd/pkg/apis/meta v0.8.0
11-
github.com/fluxcd/pkg/runtime v0.8.4
11+
github.com/fluxcd/pkg/runtime v0.8.5
1212
github.com/fluxcd/source-controller/api v0.9.1
1313
github.com/go-logr/logr v0.3.0
1414
github.com/hashicorp/go-retryablehttp v0.6.8

go.sum

+2-2
Original file line numberDiff line numberDiff line change
@@ -237,8 +237,8 @@ github.com/fluxcd/pkg/apis/kustomize v0.0.1 h1:TkA80R0GopRY27VJqzKyS6ifiKIAfwBd7
237237
github.com/fluxcd/pkg/apis/kustomize v0.0.1/go.mod h1:JAFPfnRmcrAoG1gNiA8kmEXsnOBuDyZ/F5X4DAQcVV0=
238238
github.com/fluxcd/pkg/apis/meta v0.8.0 h1:wqWpUsxhKHB1ZztcvOz+vnyhdKW9cWmjFp8Vci/XOdk=
239239
github.com/fluxcd/pkg/apis/meta v0.8.0/go.mod h1:yHuY8kyGHYz22I0jQzqMMGCcHViuzC/WPdo9Gisk8Po=
240-
github.com/fluxcd/pkg/runtime v0.8.4 h1:amuhfoHGCUfFCPXg3Zrcyy7f9J+fho+/+FbQDDyewko=
241-
github.com/fluxcd/pkg/runtime v0.8.4/go.mod h1:JD0eZIn5xkTeHHQUWXSqJPIh/ecO0d0qrUKbSVHnpnw=
240+
github.com/fluxcd/pkg/runtime v0.8.5 h1:ynh8fszbLQ3QSisQBNOABEUTnvt+/QfCdaL6gOJQcoQ=
241+
github.com/fluxcd/pkg/runtime v0.8.5/go.mod h1:JD0eZIn5xkTeHHQUWXSqJPIh/ecO0d0qrUKbSVHnpnw=
242242
github.com/fluxcd/source-controller/api v0.9.1 h1:kaL+tBflccsuj3NDESPPQyKXlZXlAgyNoT2nYY02JAE=
243243
github.com/fluxcd/source-controller/api v0.9.1/go.mod h1:Vuw+7UqEUUOdkKBfTUPHwaQgbn6LL2FwqPDx2UAk7NE=
244244
github.com/form3tech-oss/jwt-go v3.2.2+incompatible/go.mod h1:pbq4aXjuKjdthFRnoDwaVPLA+WlJuPGy+QneDUgJi2k=

0 commit comments

Comments
 (0)