Skip to content

Commit

Permalink
api: encode NamespacedName with lower case in JSON
Browse files Browse the repository at this point in the history
That is how a workaround in controller-runtime has encoded
NamespacedName (https://github.com/kubernetes-sigs/controller-runtime/blob/a33d038b84d0e7f615b8d803bdc47f0d1f8484b7/pkg/log/zap/kube_helpers.go#L49-L57)
and it is also more consistent with Kubernetes API standards.

The namespace can be left out.

Returning an anonymous struct in MarshalLog makes it impossible for
controller-runtime to adapt the type and thus blocks updating
controller-runtime to Kubernetes 1.27 because log content would
change.

Kubernetes-commit: f564f7a3559a2710b879122dd81b536fc930c410
  • Loading branch information
pohly authored and k8s-publishing-bot committed Apr 12, 2023
1 parent b1123d2 commit cc852ec
Showing 1 changed file with 2 additions and 1 deletion.
3 changes: 2 additions & 1 deletion pkg/types/namespacedname.go
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,8 @@ func (n NamespacedName) String() string {
// MarshalLog emits a struct containing required key/value pair
func (n NamespacedName) MarshalLog() interface{} {
return struct {
Name, Namespace string
Name string `json:"name"`
Namespace string `json:"namespace,omitempty"`
}{
Name: n.Name,
Namespace: n.Namespace,
Expand Down

0 comments on commit cc852ec

Please sign in to comment.