Skip to content

Commit 06553f4

Browse files
authored
Merge pull request #93 from sapcc/bump_disco_operator_deps
Bump disco operator dependencies
2 parents a96346f + ef11816 commit 06553f4

File tree

15 files changed

+224
-975
lines changed

15 files changed

+224
-975
lines changed

disco/Dockerfile

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,6 @@
11
# syntax=docker/dockerfile:experimental
22
# Build the manager binary
3-
FROM golang:1.18 as builder
4-
5-
RUN go install golang.org/x/tools/cmd/goimports@latest
3+
FROM golang:1.22 as builder
64

75
WORKDIR /workspace
86
# Copy the Go Modules manifests
@@ -23,9 +21,7 @@ COPY controllers/ controllers/
2321
COPY pkg/ pkg/
2422

2523
# Build
26-
RUN --mount=type=cache,target=/go/pkg/mod \
27-
--mount=type=cache,target=/root/.cache/go-build \
28-
CGO_ENABLED=0 GOOS=linux GOARCH=amd64 make build
24+
RUN CGO_ENABLED=0 GOOS=linux GOARCH=amd64 make build
2925

3026
# Use distroless as minimal base image to package the manager binary
3127
# Refer to https://github.com/GoogleContainerTools/distroless for more details

disco/Makefile

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ IMG_TAG ?= latest
44
IMG ?= ${IMG_REPO}:${IMG_TAG}
55

66
# ENVTEST_K8S_VERSION refers to the version of kubebuilder assets to be downloaded by envtest binary.
7-
ENVTEST_K8S_VERSION = 1.23
7+
ENVTEST_K8S_VERSION = 1.28
88

99
# Get the currently used golang install path (in GOPATH/bin, unless GOBIN is set)
1010
ifeq (,$(shell go env GOBIN))
@@ -54,7 +54,6 @@ generate: controller-gen ## Generate code containing DeepCopy, DeepCopyInto, and
5454
.PHONY: fmt
5555
fmt: ## Run go fmt against code.
5656
go fmt ./...
57-
goimports -w -local github.com/sapcc/kubernetes-operators/disco .
5857

5958
.PHONY: vet
6059
vet: ## Run go vet against code.
@@ -82,7 +81,7 @@ run: manifests generate fmt vet ## Run a controller from your host.
8281
.PHONY: docker-build
8382
docker-build: GIT_COMMIT = $(shell git rev-parse --short HEAD)
8483
docker-build: test ## Build docker image with the manager.
85-
docker build -t ${IMG_REPO}:${GIT_COMMIT} .
84+
docker build --network=host -t ${IMG_REPO}:${GIT_COMMIT} .
8685

8786
.PHONY: docker-push-mac
8887
docker-push-mac: GIT_COMMIT = $(shell git rev-parse --short HEAD)
@@ -136,8 +135,8 @@ CONTROLLER_GEN ?= $(LOCALBIN)/controller-gen
136135
ENVTEST ?= $(LOCALBIN)/setup-envtest
137136

138137
## Tool Versions
139-
KUSTOMIZE_VERSION ?= v3.8.7
140-
CONTROLLER_TOOLS_VERSION ?= v0.8.0
138+
KUSTOMIZE_VERSION ?= v5.4.1
139+
CONTROLLER_TOOLS_VERSION ?= v0.14.0
141140

142141
KUSTOMIZE_INSTALL_SCRIPT ?= "https://raw.githubusercontent.com/kubernetes-sigs/kustomize/master/hack/install_kustomize.sh"
143142
.PHONY: kustomize

disco/api/v1/groupversion_info.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,8 +15,8 @@ limitations under the License.
1515
*/
1616

1717
// Package v1 contains API Schema definitions for the disco v1 API group
18-
//+kubebuilder:object:generate=true
19-
//+groupName=disco.stable.sap.cc
18+
// +kubebuilder:object:generate=true
19+
// +groupName=disco.stable.sap.cc
2020
package v1
2121

2222
import (

disco/api/v1/webhook_suite_test.go

Lines changed: 15 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ import (
2525
"testing"
2626
"time"
2727

28-
. "github.com/onsi/ginkgo"
28+
. "github.com/onsi/ginkgo/v2"
2929
. "github.com/onsi/gomega"
3030

3131
admissionv1beta1 "k8s.io/api/admission/v1beta1"
@@ -35,9 +35,10 @@ import (
3535
ctrl "sigs.k8s.io/controller-runtime"
3636
"sigs.k8s.io/controller-runtime/pkg/client"
3737
"sigs.k8s.io/controller-runtime/pkg/envtest"
38-
"sigs.k8s.io/controller-runtime/pkg/envtest/printer"
3938
logf "sigs.k8s.io/controller-runtime/pkg/log"
4039
"sigs.k8s.io/controller-runtime/pkg/log/zap"
40+
"sigs.k8s.io/controller-runtime/pkg/metrics/server"
41+
"sigs.k8s.io/controller-runtime/pkg/webhook"
4142
)
4243

4344
// These tests use Ginkgo (BDD-style Go testing framework). Refer to
@@ -52,9 +53,7 @@ var cancel context.CancelFunc
5253
func TestAPIs(t *testing.T) {
5354
RegisterFailHandler(Fail)
5455

55-
RunSpecsWithDefaultAndCustomReporters(t,
56-
"Webhook Suite",
57-
[]Reporter{printer.NewlineReporter{}})
56+
RunSpecs(t, "Webhook Suite")
5857
}
5958

6059
var _ = BeforeSuite(func() {
@@ -93,12 +92,16 @@ var _ = BeforeSuite(func() {
9392
// start webhook server using Manager
9493
webhookInstallOptions := &testEnv.WebhookInstallOptions
9594
mgr, err := ctrl.NewManager(cfg, ctrl.Options{
96-
Scheme: scheme,
97-
Host: webhookInstallOptions.LocalServingHost,
98-
Port: webhookInstallOptions.LocalServingPort,
99-
CertDir: webhookInstallOptions.LocalServingCertDir,
100-
LeaderElection: false,
101-
MetricsBindAddress: "0",
95+
Scheme: scheme,
96+
LeaderElection: false,
97+
Metrics: server.Options{
98+
BindAddress: "0",
99+
},
100+
WebhookServer: webhook.NewServer(webhook.Options{
101+
Host: webhookInstallOptions.LocalServingHost,
102+
Port: webhookInstallOptions.LocalServingPort,
103+
CertDir: webhookInstallOptions.LocalServingCertDir,
104+
}),
102105
})
103106
Expect(err).NotTo(HaveOccurred())
104107

@@ -125,7 +128,7 @@ var _ = BeforeSuite(func() {
125128
return nil
126129
}).Should(Succeed())
127130

128-
}, 60)
131+
})
129132

130133
var _ = AfterSuite(func() {
131134
cancel()

disco/api/v1/zz_generated.deepcopy.go

Lines changed: 0 additions & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

disco/controllers/ingress_shim_controller.go

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ import (
3030
"sigs.k8s.io/controller-runtime/pkg/controller/controllerutil"
3131
"sigs.k8s.io/controller-runtime/pkg/handler"
3232
"sigs.k8s.io/controller-runtime/pkg/log"
33-
"sigs.k8s.io/controller-runtime/pkg/source"
33+
"sigs.k8s.io/controller-runtime/pkg/reconcile"
3434

3535
discov1 "github.com/sapcc/kubernetes-operators/disco/api/v1"
3636
"github.com/sapcc/kubernetes-operators/disco/pkg/clientutil"
@@ -67,8 +67,8 @@ func (r *IngressShimReconciler) SetupWithManager(mgr ctrl.Manager) error {
6767
return ctrl.NewControllerManagedBy(mgr).
6868
Named(name).
6969
For(&networkingv1.Ingress{}).
70-
Watches(&source.Kind{Type: &discov1.Record{}}, &handler.EnqueueRequestForOwner{OwnerType: &networkingv1.Ingress{}}).
71-
WithOptions(controller.Options{Log: r.logger, MaxConcurrentReconciles: 1}).
70+
Watches(&discov1.Record{}, handler.EnqueueRequestForOwner(mgr.GetScheme(), mgr.GetRESTMapper(), &networkingv1.Ingress{})).
71+
WithOptions(controller.Options{LogConstructor: func(_ *reconcile.Request) logr.Logger { return r.logger }, MaxConcurrentReconciles: 1}).
7272
Complete(r)
7373
}
7474

disco/controllers/record_controller.go

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,7 @@ import (
3434
"sigs.k8s.io/controller-runtime/pkg/controller"
3535
"sigs.k8s.io/controller-runtime/pkg/controller/controllerutil"
3636
"sigs.k8s.io/controller-runtime/pkg/log"
37+
"sigs.k8s.io/controller-runtime/pkg/reconcile"
3738

3839
discov1 "github.com/sapcc/kubernetes-operators/disco/api/v1"
3940
"github.com/sapcc/kubernetes-operators/disco/pkg/clientutil"
@@ -78,7 +79,7 @@ func (r *RecordReconciler) SetupWithManager(mgr ctrl.Manager) error {
7879
return ctrl.NewControllerManagedBy(mgr).
7980
Named(name).
8081
For(&discov1.Record{}).
81-
WithOptions(controller.Options{Log: r.logger, MaxConcurrentReconciles: 1}).
82+
WithOptions(controller.Options{LogConstructor: func(_ *reconcile.Request) logr.Logger { return r.logger }, MaxConcurrentReconciles: 1}).
8283
Complete(r)
8384
}
8485

disco/controllers/service_shim_controller.go

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ import (
3030
"sigs.k8s.io/controller-runtime/pkg/controller/controllerutil"
3131
"sigs.k8s.io/controller-runtime/pkg/handler"
3232
"sigs.k8s.io/controller-runtime/pkg/log"
33-
"sigs.k8s.io/controller-runtime/pkg/source"
33+
"sigs.k8s.io/controller-runtime/pkg/reconcile"
3434

3535
discov1 "github.com/sapcc/kubernetes-operators/disco/api/v1"
3636
"github.com/sapcc/kubernetes-operators/disco/pkg/clientutil"
@@ -62,8 +62,8 @@ func (r *ServiceShimReconciler) SetupWithManager(mgr ctrl.Manager) error {
6262
return ctrl.NewControllerManagedBy(mgr).
6363
Named(name).
6464
For(&corev1.Service{}).
65-
Watches(&source.Kind{Type: &discov1.Record{}}, &handler.EnqueueRequestForOwner{OwnerType: &corev1.Service{}}).
66-
WithOptions(controller.Options{Log: r.logger, MaxConcurrentReconciles: 1}).
65+
Watches(&discov1.Record{}, handler.EnqueueRequestForOwner(mgr.GetScheme(), mgr.GetRESTMapper(), &corev1.Service{})).
66+
WithOptions(controller.Options{LogConstructor: func(_ *reconcile.Request) logr.Logger { return r.logger }, MaxConcurrentReconciles: 1}).
6767
Complete(r)
6868
}
6969

disco/controllers/suite_test.go

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -20,13 +20,12 @@ import (
2020
"path/filepath"
2121
"testing"
2222

23-
. "github.com/onsi/ginkgo"
23+
. "github.com/onsi/ginkgo/v2"
2424
. "github.com/onsi/gomega"
2525
"k8s.io/client-go/kubernetes/scheme"
2626
"k8s.io/client-go/rest"
2727
"sigs.k8s.io/controller-runtime/pkg/client"
2828
"sigs.k8s.io/controller-runtime/pkg/envtest"
29-
"sigs.k8s.io/controller-runtime/pkg/envtest/printer"
3029
logf "sigs.k8s.io/controller-runtime/pkg/log"
3130
"sigs.k8s.io/controller-runtime/pkg/log/zap"
3231

@@ -44,9 +43,7 @@ var testEnv *envtest.Environment
4443
func TestAPIs(t *testing.T) {
4544
RegisterFailHandler(Fail)
4645

47-
RunSpecsWithDefaultAndCustomReporters(t,
48-
"Controller Suite",
49-
[]Reporter{printer.NewlineReporter{}})
46+
RunSpecs(t, "Webhook Suite")
5047
}
5148

5249
var _ = BeforeSuite(func() {
@@ -73,7 +70,7 @@ var _ = BeforeSuite(func() {
7370
Expect(err).NotTo(HaveOccurred())
7471
Expect(k8sClient).NotTo(BeNil())
7572

76-
}, 60)
73+
})
7774

7875
var _ = AfterSuite(func() {
7976
By("tearing down the test environment")

disco/deploy/kustomize/config/crd/bases/disco.stable.sap.cc_records.yaml

Lines changed: 12 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,7 @@ apiVersion: apiextensions.k8s.io/v1
33
kind: CustomResourceDefinition
44
metadata:
55
annotations:
6-
controller-gen.kubebuilder.io/version: v0.8.0
7-
creationTimestamp: null
6+
controller-gen.kubebuilder.io/version: v0.14.0
87
name: records.disco.stable.sap.cc
98
spec:
109
group: disco.stable.sap.cc
@@ -40,14 +39,19 @@ spec:
4039
description: Record is the Schema for the records API
4140
properties:
4241
apiVersion:
43-
description: 'APIVersion defines the versioned schema of this representation
44-
of an object. Servers should convert recognized schemas to the latest
45-
internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
42+
description: |-
43+
APIVersion defines the versioned schema of this representation of an object.
44+
Servers should convert recognized schemas to the latest internal value, and
45+
may reject unrecognized values.
46+
More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
4647
type: string
4748
kind:
48-
description: 'Kind is a string value representing the REST resource this
49-
object represents. Servers may infer this from the endpoint the client
50-
submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
49+
description: |-
50+
Kind is a string value representing the REST resource this object represents.
51+
Servers may infer this from the endpoint the client submits requests to.
52+
Cannot be updated.
53+
In CamelCase.
54+
More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
5155
type: string
5256
metadata:
5357
type: object
@@ -124,9 +128,3 @@ spec:
124128
storage: true
125129
subresources:
126130
status: {}
127-
status:
128-
acceptedNames:
129-
kind: ""
130-
plural: ""
131-
conditions: []
132-
storedVersions: []

0 commit comments

Comments
 (0)