Skip to content

Commit 1243723

Browse files
committed
Update flux pkg components
Signed-off-by: Aurel Canciu <aurelcanciu@gmail.com>
1 parent 62aea40 commit 1243723

12 files changed

+796
-348
lines changed

Dockerfile

+4-3
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,10 @@
1-
ARG XX_VERSION=1.0.0-rc.2
1+
ARG GO_VERSION=1.17
2+
ARG XX_VERSION=1.1.0
23

34
FROM --platform=$BUILDPLATFORM tonistiigi/xx:${XX_VERSION} AS xx
45

56
# Docker buildkit multi-arch build requires golang alpine
6-
FROM --platform=$BUILDPLATFORM golang:1.17-alpine as builder
7+
FROM --platform=$BUILDPLATFORM golang:${GO_VERSION}-alpine as builder
78

89
# Copy the build utilities.
910
COPY --from=xx / /
@@ -31,7 +32,7 @@ COPY internal/ internal/
3132
ENV CGO_ENABLED=0
3233
RUN xx-go build -a -o helm-controller main.go
3334

34-
FROM alpine:3.14
35+
FROM alpine:3.15
3536

3637
# link repo to the GitHub Container Registry image
3738
LABEL org.opencontainers.image.source="https://github.com/fluxcd/helm-controller"

Makefile

+1-1
Original file line numberDiff line numberDiff line change
@@ -105,7 +105,7 @@ docker-push:
105105
CONTROLLER_GEN = $(shell pwd)/bin/controller-gen
106106
.PHONY: controller-gen
107107
controller-gen: ## Download controller-gen locally if necessary.
108-
$(call go-get-tool,$(CONTROLLER_GEN),sigs.k8s.io/controller-tools/cmd/controller-gen@v0.5.0)
108+
$(call go-get-tool,$(CONTROLLER_GEN),sigs.k8s.io/controller-tools/cmd/controller-gen@v0.7.0)
109109

110110
# Find or download gen-crd-api-reference-docs
111111
gen-crd-api-reference-docs:

api/go.mod

+17-16
Original file line numberDiff line numberDiff line change
@@ -3,27 +3,28 @@ module github.com/fluxcd/helm-controller/api
33
go 1.17
44

55
require (
6-
github.com/fluxcd/pkg/apis/kustomize v0.3.0
7-
github.com/fluxcd/pkg/apis/meta v0.10.1
8-
github.com/fluxcd/pkg/runtime v0.12.2
9-
k8s.io/apiextensions-apiserver v0.22.2
10-
k8s.io/apimachinery v0.22.2
11-
sigs.k8s.io/controller-runtime v0.10.2
6+
github.com/fluxcd/pkg/apis/kustomize v0.3.1
7+
github.com/fluxcd/pkg/apis/meta v0.10.2
8+
github.com/fluxcd/pkg/runtime v0.12.3
9+
k8s.io/apiextensions-apiserver v0.23.1
10+
k8s.io/apimachinery v0.23.1
11+
sigs.k8s.io/controller-runtime v0.11.0
1212
)
1313

1414
require (
15-
github.com/go-logr/logr v0.4.0 // indirect
15+
github.com/go-logr/logr v1.2.2 // indirect
1616
github.com/gogo/protobuf v1.3.2 // indirect
17-
github.com/google/go-cmp v0.5.5 // indirect
18-
github.com/google/gofuzz v1.1.0 // indirect
19-
github.com/json-iterator/go v1.1.11 // indirect
17+
github.com/google/go-cmp v0.5.6 // indirect
18+
github.com/google/gofuzz v1.2.0 // indirect
19+
github.com/json-iterator/go v1.1.12 // indirect
2020
github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd // indirect
21-
github.com/modern-go/reflect2 v1.0.1 // indirect
22-
golang.org/x/net v0.0.0-20210520170846-37e1c6afe023 // indirect
23-
golang.org/x/text v0.3.6 // indirect
21+
github.com/modern-go/reflect2 v1.0.2 // indirect
22+
golang.org/x/net v0.0.0-20211215060638-4ddde0e984e9 // indirect
23+
golang.org/x/text v0.3.7 // indirect
2424
gopkg.in/inf.v0 v0.9.1 // indirect
2525
gopkg.in/yaml.v2 v2.4.0 // indirect
26-
k8s.io/klog/v2 v2.9.0 // indirect
27-
k8s.io/utils v0.0.0-20210722164352-7f3ee0f31471 // indirect
28-
sigs.k8s.io/structured-merge-diff/v4 v4.1.2 // indirect
26+
k8s.io/klog/v2 v2.30.0 // indirect
27+
k8s.io/utils v0.0.0-20211208161948-7d6a63dca704 // indirect
28+
sigs.k8s.io/json v0.0.0-20211020170558-c049b76a60c6 // indirect
29+
sigs.k8s.io/structured-merge-diff/v4 v4.2.0 // indirect
2930
)

api/go.sum

+244-69
Large diffs are not rendered by default.

config/crd/bases/helm.toolkit.fluxcd.io_helmreleases.yaml

+331-110
Large diffs are not rendered by default.

controllers/helmrelease_controller.go

+14-15
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,6 @@ import (
2323
"strings"
2424
"time"
2525

26-
"github.com/go-logr/logr"
2726
"github.com/hashicorp/go-retryablehttp"
2827
"helm.sh/helm/v3/pkg/chart"
2928
"helm.sh/helm/v3/pkg/chartutil"
@@ -130,7 +129,7 @@ func (c ConditionError) Error() string {
130129

131130
func (r *HelmReleaseReconciler) Reconcile(ctx context.Context, req ctrl.Request) (ctrl.Result, error) {
132131
start := time.Now()
133-
log := logr.FromContext(ctx)
132+
log := ctrl.LoggerFrom(ctx)
134133

135134
var hr v2.HelmRelease
136135
if err := r.Get(ctx, req.NamespacedName, &hr); err != nil {
@@ -183,7 +182,7 @@ func (r *HelmReleaseReconciler) Reconcile(ctx context.Context, req ctrl.Request)
183182

184183
func (r *HelmReleaseReconciler) reconcile(ctx context.Context, hr v2.HelmRelease) (v2.HelmRelease, ctrl.Result, error) {
185184
reconcileStart := time.Now()
186-
log := logr.FromContext(ctx)
185+
log := ctrl.LoggerFrom(ctx)
187186
// Record the value of the reconciliation request, if any
188187
if v, ok := meta.ReconcileAnnotationValue(hr.GetAnnotations()); ok {
189188
hr.Status.SetLastHandledReconcileRequest(v)
@@ -275,7 +274,7 @@ type HelmReleaseReconcilerOptions struct {
275274

276275
func (r *HelmReleaseReconciler) reconcileRelease(ctx context.Context,
277276
hr v2.HelmRelease, chart *chart.Chart, values chartutil.Values) (v2.HelmRelease, error) {
278-
log := logr.FromContext(ctx)
277+
log := ctrl.LoggerFrom(ctx)
279278

280279
// Initialize Helm action runner
281280
getter, err := r.getRESTClientGetter(ctx, hr)
@@ -550,7 +549,7 @@ func (r *HelmReleaseReconciler) composeValues(ctx context.Context, hr v2.HelmRel
550549
if err := r.Get(ctx, namespacedName, resource); err != nil {
551550
if apierrors.IsNotFound(err) {
552551
if v.Optional {
553-
(logr.FromContext(ctx)).
552+
(ctrl.LoggerFrom(ctx)).
554553
Info(fmt.Sprintf("could not find optional %s '%s'", v.Kind, namespacedName))
555554
continue
556555
}
@@ -562,7 +561,7 @@ func (r *HelmReleaseReconciler) composeValues(ctx context.Context, hr v2.HelmRel
562561
}
563562
if resource == nil {
564563
if v.Optional {
565-
(logr.FromContext(ctx)).Info(fmt.Sprintf("could not find optional %s '%s'", v.Kind, namespacedName))
564+
(ctrl.LoggerFrom(ctx)).Info(fmt.Sprintf("could not find optional %s '%s'", v.Kind, namespacedName))
566565
continue
567566
}
568567
return nil, fmt.Errorf("could not find %s '%s'", v.Kind, namespacedName)
@@ -583,7 +582,7 @@ func (r *HelmReleaseReconciler) composeValues(ctx context.Context, hr v2.HelmRel
583582
if err := r.Get(ctx, namespacedName, resource); err != nil {
584583
if apierrors.IsNotFound(err) {
585584
if v.Optional {
586-
(logr.FromContext(ctx)).
585+
(ctrl.LoggerFrom(ctx)).
587586
Info(fmt.Sprintf("could not find optional %s '%s'", v.Kind, namespacedName))
588587
continue
589588
}
@@ -595,7 +594,7 @@ func (r *HelmReleaseReconciler) composeValues(ctx context.Context, hr v2.HelmRel
595594
}
596595
if resource == nil {
597596
if v.Optional {
598-
(logr.FromContext(ctx)).Info(fmt.Sprintf("could not find optional %s '%s'", v.Kind, namespacedName))
597+
(ctrl.LoggerFrom(ctx)).Info(fmt.Sprintf("could not find optional %s '%s'", v.Kind, namespacedName))
599598
continue
600599
}
601600
return nil, fmt.Errorf("could not find %s '%s'", v.Kind, namespacedName)
@@ -655,17 +654,17 @@ func (r *HelmReleaseReconciler) reconcileDelete(ctx context.Context, hr v2.HelmR
655654
if err != nil {
656655
return ctrl.Result{}, err
657656
}
658-
run, err := runner.NewRunner(getter, hr.GetStorageNamespace(), logr.FromContext(ctx))
657+
run, err := runner.NewRunner(getter, hr.GetStorageNamespace(), ctrl.LoggerFrom(ctx))
659658
if err != nil {
660659
return ctrl.Result{}, err
661660
}
662661
if err := run.Uninstall(hr); err != nil && !errors.Is(err, driver.ErrReleaseNotFound) {
663662
return ctrl.Result{}, err
664663
}
665-
logr.FromContext(ctx).Info("uninstalled Helm release for deleted resource")
664+
ctrl.LoggerFrom(ctx).Info("uninstalled Helm release for deleted resource")
666665

667666
} else {
668-
logr.FromContext(ctx).Info("skipping Helm uninstall for suspended resource")
667+
ctrl.LoggerFrom(ctx).Info("skipping Helm uninstall for suspended resource")
669668
}
670669

671670
// Remove our finalizer from the list and update it.
@@ -740,7 +739,7 @@ func (r *HelmReleaseReconciler) event(ctx context.Context, hr v2.HelmRelease, re
740739
r.EventRecorder.Event(&hr, "Normal", severity, msg)
741740
objRef, err := reference.GetReference(r.Scheme, &hr)
742741
if err != nil {
743-
logr.FromContext(ctx).Error(err, "unable to send event")
742+
ctrl.LoggerFrom(ctx).Error(err, "unable to send event")
744743
return
745744
}
746745

@@ -750,7 +749,7 @@ func (r *HelmReleaseReconciler) event(ctx context.Context, hr v2.HelmRelease, re
750749
meta = map[string]string{"revision": revision}
751750
}
752751
if err := r.ExternalEventRecorder.Eventf(*objRef, meta, severity, severity, msg); err != nil {
753-
logr.FromContext(ctx).Error(err, "unable to send event")
752+
ctrl.LoggerFrom(ctx).Error(err, "unable to send event")
754753
return
755754
}
756755
}
@@ -760,7 +759,7 @@ func (r *HelmReleaseReconciler) recordSuspension(ctx context.Context, hr v2.Helm
760759
if r.MetricsRecorder == nil {
761760
return
762761
}
763-
log := logr.FromContext(ctx)
762+
log := ctrl.LoggerFrom(ctx)
764763

765764
objRef, err := reference.GetReference(r.Scheme, &hr)
766765
if err != nil {
@@ -782,7 +781,7 @@ func (r *HelmReleaseReconciler) recordReadiness(ctx context.Context, hr v2.HelmR
782781

783782
objRef, err := reference.GetReference(r.Scheme, &hr)
784783
if err != nil {
785-
logr.FromContext(ctx).Error(err, "unable to record readiness metric")
784+
ctrl.LoggerFrom(ctx).Error(err, "unable to record readiness metric")
786785
return
787786
}
788787
if rc := apimeta.FindStatusCondition(hr.Status.Conditions, meta.ReadyCondition); rc != nil {

controllers/helmrelease_controller_chart.go

+2-2
Original file line numberDiff line numberDiff line change
@@ -28,13 +28,13 @@ import (
2828
"reflect"
2929
"strings"
3030

31-
"github.com/go-logr/logr"
3231
"github.com/hashicorp/go-retryablehttp"
3332
"helm.sh/helm/v3/pkg/chart"
3433
"helm.sh/helm/v3/pkg/chart/loader"
3534
apierrors "k8s.io/apimachinery/pkg/api/errors"
3635
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
3736
"k8s.io/apimachinery/pkg/types"
37+
ctrl "sigs.k8s.io/controller-runtime"
3838

3939
sourcev1 "github.com/fluxcd/source-controller/api/v1beta1"
4040

@@ -69,7 +69,7 @@ func (r *HelmReleaseReconciler) reconcileChart(ctx context.Context, hr *v2.HelmR
6969
hr.Status.HelmChart = chartName.String()
7070
return hc, nil
7171
case helmChartRequiresUpdate(hr, &helmChart):
72-
logr.FromContext(ctx).Info("chart diverged from template", strings.ToLower(sourcev1.HelmChartKind), chartName.String())
72+
ctrl.LoggerFrom(ctx).Info("chart diverged from template", strings.ToLower(sourcev1.HelmChartKind), chartName.String())
7373
helmChart.Spec = hc.Spec
7474
if err = r.Client.Update(ctx, &helmChart); err != nil {
7575
return nil, err

controllers/helmrelease_controller_chart_test.go

+1-2
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,6 @@ import (
2929
"k8s.io/client-go/kubernetes/scheme"
3030
"sigs.k8s.io/controller-runtime/pkg/client"
3131
"sigs.k8s.io/controller-runtime/pkg/client/fake"
32-
"sigs.k8s.io/controller-runtime/pkg/log"
3332

3433
v2 "github.com/fluxcd/helm-controller/api/v2beta1"
3534
)
@@ -160,7 +159,7 @@ func TestHelmReleaseReconciler_reconcileChart(t *testing.T) {
160159
Client: c,
161160
}
162161

163-
hc, err := r.reconcileChart(logr.NewContext(context.TODO(), log.NullLogger{}), tt.hr)
162+
hc, err := r.reconcileChart(logr.NewContext(context.TODO(), logr.Discard()), tt.hr)
164163
if tt.expectErr {
165164
g.Expect(err).To(HaveOccurred())
166165
g.Expect(hc).To(BeNil())

controllers/helmrelease_controller_test.go

+1-2
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,6 @@ import (
2828
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
2929
"k8s.io/apimachinery/pkg/runtime"
3030
"sigs.k8s.io/controller-runtime/pkg/client/fake"
31-
"sigs.k8s.io/controller-runtime/pkg/log"
3231
"sigs.k8s.io/yaml"
3332

3433
v2 "github.com/fluxcd/helm-controller/api/v2beta1"
@@ -267,7 +266,7 @@ invalid`,
267266
Values: values,
268267
},
269268
}
270-
got, err := r.composeValues(logr.NewContext(context.TODO(), log.NullLogger{}), hr)
269+
got, err := r.composeValues(logr.NewContext(context.TODO(), logr.Discard()), hr)
271270
if (err != nil) != tt.wantErr {
272271
t.Errorf("composeValues() error = %v, wantErr %v", err, tt.wantErr)
273272
return

0 commit comments

Comments
 (0)