func extractVersionFromDeployment()

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
}