-
Story
-
Resolution: Done
-
Critical
-
None
-
None
-
3
-
False
-
None
-
False
-
SECFLOWOTL-129 - Better Error Handling for Non-Critical Issues in Namespace Installations by operator
-
-
-
1
-
Pipelines Sprint TekShift 2, Pipelines Sprint TekShift 3, Pipelines Sprint TekShift 4, Pipelines Sprint TekShift 5, Pipelines Sprint TekShift 6
this particular issue is stemming from these lines of code:
sccRoleBinding, err := r.kubeClientSet.RbacV1().RoleBindings(ns.Name).Get(ctx, pipelinesSCCRoleBinding, metav1.GetOptions{}) if err != nil { return nil, err }
the operator is full of such error returns which are not wrapped and hence do not have the context - the result of this particular code snippet was a sev1 issue with a customer and we were not able to debug because the error manifested in the logs as:
"pipelines-scc-rolebinding" not found
this error does not have the namespace and other context of which part of the code is this coming from.
this code snippet is coming from https://github.com/tektoncd/operator/blob/8f8f425e1fa75ffdad726b56fba21bcdab803440/pkg/reconciler/openshift/tektonconfig/rbac.go#L262
acceptance criteria:
- add context and wrap errors while returning in operator code
- ensurePreRequisites() method is wrapped entirely
- getNamespacesToBeReconciled() is wrapped entirely
- https://github.com/tektoncd/operator/blob/main/pkg/reconciler/openshift/tektonconfig/rbac.go <-- the entire file is wrapped
- stretch goal: other parts of the operator are wrapped as well
- is cloned by
-
SRVKP-4483 [1.14.4] - wrap errors with more context while creating resources in the operator
- Verified
- is depended on by
-
RFE-5304 Add namespace name in the error message related to `pipelines-scc-rolebinding` in pipelines operator pod logs
- Backlog
-
SRVKP-4343 Fix "pipelines-scc-rolebinding" missing errors
- Release Pending
- links to