fix(helm): correct logging CM, add webhook replicas, add extraObjects#3661
fix(helm): correct logging CM, add webhook replicas, add extraObjects#3661aqeelat wants to merge 3 commits into
Conversation
|
hi @aqeelat , Thank you for your PR, can you go through the easyCLA please. |
|
@jkhelil done |
8bbe1e0 to
7010203
Compare
7ce2443 to
8265de9
Compare
8265de9 to
7ce2443
Compare
|
@jkhelil sorry for the mess. The PR is ready now. |
|
/approve |
|
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: jkhelil The full list of commands accepted by this bot can be found here. The pull request process is described here DetailsNeeds approval from an approver in each of these files:
Approvers can indicate their approval by writing |
|
@infernus01 can you have a look |
|
/ok-to-test |
infernus01
left a comment
There was a problem hiding this comment.
@aqeelat Could you please rebase the PR?
7ce2443 to
2507bcd
Compare
|
@infernus01 rebased |
infernus01
left a comment
There was a problem hiding this comment.
Changes look good, I'm confused reading commit messages. Commit 3cb395c says "the operator does not run leader election", while commit 7ce2443 correctly says "the operator runs on knative sharedmain, which enables leader election by default". The PR description and values.yaml comments are correct. Only affects someone reading individual commit messages in git log.
|
@infernus01 this was part of the journey I took. I thought it didn't then I figured out that it did. Do you want me to squash into one commit with a proper message? |
|
That would be good, we'd have a clean git history. |
The logging ConfigMap used inert loglevel.controller / loglevel.webhook keys, copy-pasted from knative-serving. The Tekton operator's actual logger names are its unique-process-names (tekton-operator-lifecycle, tekton-operator-cluster-operations) and its webhook service name (<fullname>-webhook), so the old keys matched nothing and the effective level fell back to the global zap-logger-config, which was hardcoded to debug/development in production. Replace the inert keys with the operator's real logger names and drive the global zap-logger-config from operator.logLevel (default info, development false). The webhook key uses fullname (not operator-name) because the webhook derives its logger name from WEBHOOK_SERVICE_NAME, which is fullname-based. Also set CONFIG_LOGGING_NAME on the operator containers so they consume this ConfigMap; previously they fell back to knative's default name (config-logging), which this chart does not create, leaving all logging config inert for the operator containers. Signed-off-by: Abdullah Alaqeel <abdullah.t.aqeel@gmail.com>
The openshift CRDs template opens {{- if ... -}} at line 1 but never
closes it, so helm reports "unexpected EOF" when parsing the chart.
Helm parses every template file at load time regardless of the if
condition, so this broke helm template/install/lint for all flavors,
not just openshift. Add the missing {{- end -}}, matching the
structure of kubernetes-crds.yaml.
Signed-off-by: Abdullah Alaqeel <abdullah.t.aqeel@gmail.com>
Expose Deployment replica counts and allow user-supplied manifests. - operator.replicas: operator Deployment replica count (default 1; knative sharedmain runs leader election by default, so >=2 is active/standby, no duplicate writes). - webhook.replicas: webhook Deployment replica count (default 1, floored at 1; 0 would wedge admission under failurePolicy: Fail). - extraObjects: render arbitrary user-supplied manifests (e.g. a TektonConfig CR). Defaults to []. Signed-off-by: Abdullah Alaqeel <abdullah.t.aqeel@gmail.com>
2507bcd to
c7dd389
Compare
|
@infernus01 done. |
|
/ok-to-test |
|
@jkhelil can you please approve the PR? For some reason, Github is not showing @infernus01 as an approved reviewer.
|

Changes
Community Helm chart (
charts/tekton-operator/).Features
webhook.replicas— webhook Deployment replica count is configurable (default 1, floored at 1).operator.replicas— operator Deployment replica count is configurable (default 1; leader election is active, so >=2 runs active/standby).extraObjects— render arbitrary user-supplied manifests alongside the operator (e.g. a TektonConfig CR).Fixes
loglevel.controller/loglevel.webhookmatched nothing; replaced with the operator's real logger names (tekton-operator-lifecycle,tekton-operator-cluster-operations,<fullname>-webhook). Default level is nowinfoviaoperator.logLevel(was hardcodeddebug/development). Operator containers now setCONFIG_LOGGING_NAMEso they consume this ConfigMap.loglevel.*values are quoted to avoid YAML type coercion.{{- end -}}on an{{- if }}block causedunexpected EOFfor all flavors, since helm parses every file at load. Added the closing tag.Submitter Checklist
make test lintbefore submitting a PR(chart-only change;
make lint/make testcover Go packages and do not exercise the chart. Verified withhelm lintandhelm templateacross default, custom-logLevel, custom-operatorName, divergent release-name, replicas (operator + webhook), extraObjects, and both k8s/openshift flavors.)(No chart test framework exists in this repo. Validation is via
helm lint/helm templaterendering.)(values.yaml comments document all new/changed values, including the
autoInstallComponentswarning onextraObjectsand the leader-election note onoperator.replicas.)Release Notes