in internal/version.go [112:124]
func extractVersionFromDeployment(c *kubernetes.Clientset, namespace string) *version.Version {
deployment, err := c.AppsV1().Deployments(namespace).Get(context.Background(), "elastic-operator", metav1.GetOptions{})
if err != nil {
logger.Println(fmt.Errorf("operator statefulset not found, checking for OLM deployment but failed: %w", err).Error())
return fallbackMaxVersion
}
v, err := extractVersionFromOLMMetadata(deployment.Labels)
if err != nil {
logger.Println("ECK operator not found in OLM metadata checking container image as last resort")
return extractVersionFromContainers(deployment.Spec.Template.Spec.Containers)
}
return v
}