Figure 3-7. From Golang types to GVKs to GVRs to an HTTP path—API Machinery in a nutshell
pretty amazing!
Figure 3-7. From Golang types to GVKs to GVRs to an HTTP path—API Machinery in a nutshell
pretty amazing!
However, these valuesare empty most of the time and are therefore pretty useless for identification.
They are mostly empty as they are set in TypeMeta and that are not filled in memory unless someone/decoder explicitly fills it.
By convention, kinds are formatted in CamelCase like words and are usuallysingular. Depending on the context, their concrete format differs. ForCustomResourceDefinition kinds, it must be a DNS path label (RFC 1035)
couldn't understand fully, but ok for now.
In Go, each GVK corresponds to one Go type. In contrast, a Go type canbelong to multiple GVKs
get some example?
So basically think of the GVK as API contract and the Go Type as Implementation.
So, basically it should be only one for the implementation so that it can decode without being ambiguous but then again to maintain multiple versions, it has to support multiple types.
As you can see, TypeMeta is embedded
what is embedded mean?
by using level-based logic you can just rerun the control loop
didn't get this part.