in pkg/webhook/injection.go [43:64]
func (si *SidecarInjector) injectAsNativeSidecar(pod *corev1.Pod) (bool, error) {
supportsNativeSidecar, err := si.supportsNativeSidecar()
if err != nil {
return false, fmt.Errorf("failed to determine native sidecar injection: %w", err)
}
nativeSidecarEnabled := true
if enable, ok := pod.Annotations[GcsFuseNativeSidecarEnableAnnotation]; ok {
parsedAnnotation, err := ParseBool(enable)
if err != nil {
klog.Errorf("failed to parse enableNativeSidecar annotation: %v", err)
} else {
nativeSidecarEnabled = parsedAnnotation
// Warn the user if they used annotation incorrectly.
if nativeSidecarEnabled && !supportsNativeSidecar {
klog.Errorf("attempting to enable native sidecar on a cluster that does not support it, this is not allowed")
}
}
}
return nativeSidecarEnabled && supportsNativeSidecar, nil
}