Hi Brian
Could you please verify if you're passing the right registered scheme to the controller through its options. Assuming the code looks like this:
```
var (
scheme = runtime.NewScheme()
)
func init() {
utilruntime.Must(clientgoscheme.AddToScheme(scheme))
utilruntime.Must(monitoringv1.AddToScheme(scheme))//+kubebuilder:scaffold:scheme
}
```
Could you check, if controller options have this scheme passed, ie:
```
mgr, err := ctrl.NewManager(ctrl.GetConfigOrDie(), ctrl.Options{
Scheme: scheme, // Scheme initialized before with registered types.
MetricsBindAddress: metricsAddr,
.....
})
```
If it is still the case, and error persists - I'd suggest verifying the following:
1. Ensure that the path being specified for the monitoring scheme is right, and does contain `PodMonitor` registered.
2. Ensure that the scheme is initialized properly.
3. Verify that you are testing against the right CRD version.
Hope this helps!