You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by gf...@apache.org on 2024/04/11 15:16:41 UTC
(camel-k) branch main updated: feat(deps): Upgrade controller-runtime to 0.16.5
This is an automated email from the ASF dual-hosted git repository.
gfournier pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/camel-k.git
The following commit(s) were added to refs/heads/main by this push:
new 084327ac4 feat(deps): Upgrade controller-runtime to 0.16.5
084327ac4 is described below
commit 084327ac43b34629bf4bab07f274806408f9f7d9
Author: Gaelle Fournier <ga...@gmail.com>
AuthorDate: Mon Apr 8 17:32:25 2024 +0200
feat(deps): Upgrade controller-runtime to 0.16.5
---
go.mod | 6 +++---
go.sum | 12 ++++++------
pkg/cmd/operator/operator.go | 46 ++++++++++++++++++++++++++++++++++----------
3 files changed, 45 insertions(+), 19 deletions(-)
diff --git a/go.mod b/go.mod
index a975015b5..b22b3670a 100644
--- a/go.mod
+++ b/go.mod
@@ -52,8 +52,8 @@ require (
k8s.io/utils v0.0.0-20230505201702-9f6742963106
knative.dev/eventing v0.40.3
knative.dev/pkg v0.0.0-20240116073220-b488e7be5902
- knative.dev/serving v0.40.1
- sigs.k8s.io/controller-runtime v0.15.2
+ knative.dev/serving v0.39.3
+ sigs.k8s.io/controller-runtime v0.16.5
sigs.k8s.io/structured-merge-diff/v4 v4.4.1
)
@@ -76,7 +76,7 @@ require (
github.com/docker/distribution v2.8.2+incompatible // indirect
github.com/docker/docker v24.0.9+incompatible // indirect
github.com/docker/docker-credential-helpers v0.7.0 // indirect
- github.com/emicklei/go-restful/v3 v3.10.2 // indirect
+ github.com/emicklei/go-restful/v3 v3.11.0 // indirect
github.com/evanphx/json-patch/v5 v5.8.0 // indirect
github.com/go-kit/log v0.2.1 // indirect
github.com/go-logfmt/logfmt v0.5.1 // indirect
diff --git a/go.sum b/go.sum
index dc1cfc1b4..13aab05c3 100644
--- a/go.sum
+++ b/go.sum
@@ -103,8 +103,8 @@ github.com/docker/docker v24.0.9+incompatible h1:HPGzNmwfLZWdxHqK9/II92pyi1EpYKs
github.com/docker/docker v24.0.9+incompatible/go.mod h1:eEKB0N0r5NX/I1kEveEz05bcu8tLC/8azJZsviup8Sk=
github.com/docker/docker-credential-helpers v0.7.0 h1:xtCHsjxogADNZcdv1pKUHXryefjlVRqWqIhk/uXJp0A=
github.com/docker/docker-credential-helpers v0.7.0/go.mod h1:rETQfLdHNT3foU5kuNkFR1R1V12OJRRO5lzt2D1b5X0=
-github.com/emicklei/go-restful/v3 v3.10.2 h1:hIovbnmBTLjHXkqEBUz3HGpXZdM7ZrE9fJIZIqlJLqE=
-github.com/emicklei/go-restful/v3 v3.10.2/go.mod h1:6n3XBCmQQb25CM2LCACGz8ukIrRry+4bhvbpWn3mrbc=
+github.com/emicklei/go-restful/v3 v3.11.0 h1:rAQeMHw1c7zTmncogyy8VvRZwtkmkZ4FxERmMY4rD+g=
+github.com/emicklei/go-restful/v3 v3.11.0/go.mod h1:6n3XBCmQQb25CM2LCACGz8ukIrRry+4bhvbpWn3mrbc=
github.com/envoyproxy/go-control-plane v0.9.0/go.mod h1:YTl/9mNaCwkRvm6d1a2C3ymFceY/DCBVvsKhRF0iEA4=
github.com/envoyproxy/go-control-plane v0.9.1-0.20191026205805-5f8ba28d4473/go.mod h1:YTl/9mNaCwkRvm6d1a2C3ymFceY/DCBVvsKhRF0iEA4=
github.com/envoyproxy/go-control-plane v0.9.4/go.mod h1:6rpuAdCZL397s3pYoYcLgu1mIlRU8Am5FuJP05cCM98=
@@ -860,13 +860,13 @@ knative.dev/networking v0.0.0-20240116081125-ce0738abf051 h1:bTRVfwmfu4/7U1YBcgB
knative.dev/networking v0.0.0-20240116081125-ce0738abf051/go.mod h1:rdzGL1OVP6VItEiJUN/FTCrDnIzkA6ykhSvaK+0Ne6o=
knative.dev/pkg v0.0.0-20240116073220-b488e7be5902 h1:H6+JJN23fhwYWCHY1339sY6uhIyoUwDy1a8dN233fdk=
knative.dev/pkg v0.0.0-20240116073220-b488e7be5902/go.mod h1:NYk8mMYoLkO7CQWnNkti4YGGnvLxN6MIDbUvtgeo0C0=
-knative.dev/serving v0.40.1 h1:ZAAK8KwZQYUgCgVi3ay+NqKAISnJQ1OXPYvdtXWUcBc=
-knative.dev/serving v0.40.1/go.mod h1:Ory3XczDB8b1lH757CSdeDeouY3LHzSamX8IjmStuoU=
+knative.dev/serving v0.39.3 h1:x3p3iCY0eKwKZmlXUZfc9C0YawyiB6Kc1HlE66b530I=
+knative.dev/serving v0.39.3/go.mod h1:bWylSgwnRZeL659qy7m3/TZioYk25TIfusPUEeR695A=
rsc.io/binaryregexp v0.2.0/go.mod h1:qTv7/COck+e2FymRvadv62gMdZztPaShugOCi3I+8D8=
rsc.io/quote/v3 v3.1.0/go.mod h1:yEA65RcK8LyAZtP9Kv3t0HmxON59tX3rD+tICJqUlj0=
rsc.io/sampler v1.3.0/go.mod h1:T1hPZKmBbMNahiBKFy5HrXp6adAjACjK9JXDnKaTXpA=
-sigs.k8s.io/controller-runtime v0.15.2 h1:9V7b7SDQSJ08IIsJ6CY1CE85Okhp87dyTMNDG0FS7f4=
-sigs.k8s.io/controller-runtime v0.15.2/go.mod h1:7ngYvp1MLT+9GeZ+6lH3LOlcHkp/+tzA/fmHa4iq9kk=
+sigs.k8s.io/controller-runtime v0.16.5 h1:yr1cEJbX08xsTW6XEIzT13KHHmIyX8Umvme2cULvFZw=
+sigs.k8s.io/controller-runtime v0.16.5/go.mod h1:j7bialYoSn142nv9sCOJmQgDXQXxnroFU4VnX/brVJ0=
sigs.k8s.io/json v0.0.0-20221116044647-bc3834ca7abd h1:EDPBXCAspyGV4jQlpZSudPeMmr1bNJefnuqLsRAsHZo=
sigs.k8s.io/json v0.0.0-20221116044647-bc3834ca7abd/go.mod h1:B8JuhiUyNFVKdsE8h686QcCxMaH6HrOAZj4vswFpcB0=
sigs.k8s.io/structured-merge-diff/v4 v4.4.1 h1:150L+0vs/8DA78h1u02ooW1/fFq/Lwr+sGiqlzvrtq4=
diff --git a/pkg/cmd/operator/operator.go b/pkg/cmd/operator/operator.go
index f4bf99b82..cf571e30e 100644
--- a/pkg/cmd/operator/operator.go
+++ b/pkg/cmd/operator/operator.go
@@ -52,6 +52,7 @@ import (
zapctrl "sigs.k8s.io/controller-runtime/pkg/log/zap"
"sigs.k8s.io/controller-runtime/pkg/manager"
"sigs.k8s.io/controller-runtime/pkg/manager/signals"
+ metricsserver "sigs.k8s.io/controller-runtime/pkg/metrics/server"
servingv1 "knative.dev/serving/pkg/apis/serving/v1"
@@ -186,27 +187,42 @@ func Run(healthPort, monitoringPort int32, leaderElection bool, leaderElectionID
hasIntegrationLabel, err := labels.NewRequirement(v1.IntegrationLabel, selection.Exists, []string{})
exitOnError(err, "cannot create Integration label selector")
- selector := labels.NewSelector().Add(*hasIntegrationLabel)
+ labelsSelector := labels.NewSelector().Add(*hasIntegrationLabel)
+
+ selector := cache.ByObject{
+ Label: labelsSelector,
+ }
+
+ if !platform.IsCurrentOperatorGlobal() {
+ selector = cache.ByObject{
+ Label: labelsSelector,
+ Namespaces: getNamespacesSelector(operatorNamespace, watchNamespace),
+ }
+ }
selectors := map[ctrl.Object]cache.ByObject{
- &corev1.Pod{}: {Label: selector},
- &appsv1.Deployment{}: {Label: selector},
- &batchv1.Job{}: {Label: selector},
- &servingv1.Service{}: {Label: selector},
+ &corev1.Pod{}: selector,
+ &appsv1.Deployment{}: selector,
+ &batchv1.Job{}: selector,
+ }
+
+ if ok, err := kubernetes.IsAPIResourceInstalled(bootstrapClient, servingv1.SchemeGroupVersion.String(), reflect.TypeOf(servingv1.Service{}).Name()); ok && err == nil {
+ selectors[&servingv1.Service{}] = selector
}
if ok, err := kubernetes.IsAPIResourceInstalled(bootstrapClient, batchv1.SchemeGroupVersion.String(), reflect.TypeOf(batchv1.CronJob{}).Name()); ok && err == nil {
- selectors[&batchv1.CronJob{}] = cache.ByObject{
- Label: selector,
- }
+ selectors[&batchv1.CronJob{}] = selector
}
options := cache.Options{
ByObject: selectors,
}
+ if !platform.IsCurrentOperatorGlobal() {
+ options.DefaultNamespaces = getNamespacesSelector(operatorNamespace, watchNamespace)
+ }
+
mgr, err := manager.New(cfg, manager.Options{
- Namespace: watchNamespace,
EventBroadcaster: broadcaster,
LeaderElection: leaderElection,
LeaderElectionNamespace: operatorNamespace,
@@ -214,7 +230,7 @@ func Run(healthPort, monitoringPort int32, leaderElection bool, leaderElectionID
LeaderElectionResourceLock: resourcelock.LeasesResourceLock,
LeaderElectionReleaseOnCancel: true,
HealthProbeBindAddress: ":" + strconv.Itoa(int(healthPort)),
- MetricsBindAddress: ":" + strconv.Itoa(int(monitoringPort)),
+ Metrics: metricsserver.Options{BindAddress: ":" + strconv.Itoa(int(monitoringPort))},
Cache: options,
})
exitOnError(err, "")
@@ -243,6 +259,16 @@ func Run(healthPort, monitoringPort int32, leaderElection bool, leaderElectionID
exitOnError(mgr.Start(ctx), "manager exited non-zero")
}
+func getNamespacesSelector(operatorNamespace string, watchNamespace string) map[string]cache.Config {
+ namespacesSelector := map[string]cache.Config{
+ operatorNamespace: {},
+ }
+ if operatorNamespace != watchNamespace {
+ namespacesSelector[watchNamespace] = cache.Config{}
+ }
+ return namespacesSelector
+}
+
// findOrCreateIntegrationPlatform create default integration platform in operator namespace if not already exists.
func findOrCreateIntegrationPlatform(ctx context.Context, c client.Client, operatorNamespace string) error {
operatorID := defaults.OperatorID()