From f62ce15248353107c855e6af450a1816017afb1c Mon Sep 17 00:00:00 2001 From: Jason Witkowski Date: Mon, 26 Feb 2024 17:23:31 -0500 Subject: [PATCH 1/2] fix: konnectivity extra args override --- api/v1alpha1/tenantcontrolplane_types.go | 3 +++ .../bases/kamaji.clastix.io_tenantcontrolplanes.yaml | 10 ++++++++-- config/install.yaml | 4 ++-- internal/resources/konnectivity/agent.go | 9 +++++++-- 4 files changed, 20 insertions(+), 6 deletions(-) diff --git a/api/v1alpha1/tenantcontrolplane_types.go b/api/v1alpha1/tenantcontrolplane_types.go index 265443a3..d4c7ffe7 100644 --- a/api/v1alpha1/tenantcontrolplane_types.go +++ b/api/v1alpha1/tenantcontrolplane_types.go @@ -189,6 +189,9 @@ type ImageOverrideTrait struct { } // ExtraArgs allows adding additional arguments to said component. +// WARNING - This option can override existing konnectivity +// parameters and cause konnectivity components to misbehave in +// unxpected ways. Only modify if you know what you are doing. type ExtraArgs []string type KonnectivityServerSpec struct { diff --git a/config/crd/bases/kamaji.clastix.io_tenantcontrolplanes.yaml b/config/crd/bases/kamaji.clastix.io_tenantcontrolplanes.yaml index 3bd3749f..d18780a4 100644 --- a/config/crd/bases/kamaji.clastix.io_tenantcontrolplanes.yaml +++ b/config/crd/bases/kamaji.clastix.io_tenantcontrolplanes.yaml @@ -92,7 +92,10 @@ spec: properties: extraArgs: description: ExtraArgs allows adding additional arguments - to said component. + to said component. WARNING - This option can override + existing konnectivity parameters and cause konnectivity + components to misbehave in unxpected ways. Only modify + if you know what you are doing. items: type: string type: array @@ -114,7 +117,10 @@ spec: properties: extraArgs: description: ExtraArgs allows adding additional arguments - to said component. + to said component. WARNING - This option can override + existing konnectivity parameters and cause konnectivity + components to misbehave in unxpected ways. Only modify + if you know what you are doing. items: type: string type: array diff --git a/config/install.yaml b/config/install.yaml index 3d72db95..c5101259 100644 --- a/config/install.yaml +++ b/config/install.yaml @@ -340,7 +340,7 @@ spec: version: v0.0.32 properties: extraArgs: - description: ExtraArgs allows adding additional arguments to said component. + description: ExtraArgs allows adding additional arguments to said component. WARNING - This option can override existing konnectivity parameters and cause konnectivity components to misbehave in unxpected ways. Only modify if you know what you are doing. items: type: string type: array @@ -360,7 +360,7 @@ spec: version: v0.0.32 properties: extraArgs: - description: ExtraArgs allows adding additional arguments to said component. + description: ExtraArgs allows adding additional arguments to said component. WARNING - This option can override existing konnectivity parameters and cause konnectivity components to misbehave in unxpected ways. Only modify if you know what you are doing. items: type: string type: array diff --git a/internal/resources/konnectivity/agent.go b/internal/resources/konnectivity/agent.go index c99113bf..359aee67 100644 --- a/internal/resources/konnectivity/agent.go +++ b/internal/resources/konnectivity/agent.go @@ -164,8 +164,7 @@ func (r *Agent) mutate(ctx context.Context, tenantControlPlane *kamajiv1alpha1.T r.resource.Spec.Template.Spec.Containers[0].Name = AgentName r.resource.Spec.Template.Spec.Containers[0].Command = []string{"/proxy-agent"} - args := utilities.ArgsFromSliceToMap(tenantControlPlane.Spec.Addons.Konnectivity.KonnectivityAgentSpec.ExtraArgs) - + args := make(map[string]string) args["-v"] = "8" args["--logtostderr"] = "true" args["--ca-cert"] = "/var/run/secrets/kubernetes.io/serviceaccount/ca.crt" @@ -175,6 +174,12 @@ func (r *Agent) mutate(ctx context.Context, tenantControlPlane *kamajiv1alpha1.T args["--health-server-port"] = "8134" args["--service-account-token-path"] = "/var/run/secrets/tokens/konnectivity-agent-token" + extraArgs := utilities.ArgsFromSliceToMap(tenantControlPlane.Spec.Addons.Konnectivity.KonnectivityAgentSpec.ExtraArgs) + + for k, v := range extraArgs { + args[k] = v + } + r.resource.Spec.Template.Spec.Containers[0].Args = utilities.ArgsFromMapToSlice(args) r.resource.Spec.Template.Spec.Containers[0].VolumeMounts = []corev1.VolumeMount{ { From 9ab29fcac1c3af00486ef3c83e823a22f71538a7 Mon Sep 17 00:00:00 2001 From: Jason Witkowski Date: Tue, 27 Feb 2024 11:59:40 -0500 Subject: [PATCH 2/2] fix: Generate API docs --- docs/content/reference/api.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/content/reference/api.md b/docs/content/reference/api.md index eef47305..9442941b 100644 --- a/docs/content/reference/api.md +++ b/docs/content/reference/api.md @@ -11304,7 +11304,7 @@ Enables the Konnectivity addon in the Tenant Cluster, required if the worker nod extraArgs []string - ExtraArgs allows adding additional arguments to said component.
+ ExtraArgs allows adding additional arguments to said component. WARNING - This option can override existing konnectivity parameters and cause konnectivity components to misbehave in unxpected ways. Only modify if you know what you are doing.
false @@ -11357,7 +11357,7 @@ Enables the Konnectivity addon in the Tenant Cluster, required if the worker nod extraArgs []string - ExtraArgs allows adding additional arguments to said component.
+ ExtraArgs allows adding additional arguments to said component. WARNING - This option can override existing konnectivity parameters and cause konnectivity components to misbehave in unxpected ways. Only modify if you know what you are doing.
false