You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@kie.apache.org by wm...@apache.org on 2024/01/11 15:01:54 UTC

(incubator-kie-kogito-serverless-operator) branch main updated: Set selector and label specific to platform service (#341)

This is an automated email from the ASF dual-hosted git repository.

wmedvedeo pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/incubator-kie-kogito-serverless-operator.git


The following commit(s) were added to refs/heads/main by this push:
     new e631455a Set selector and label specific to platform service (#341)
e631455a is described below

commit e631455a8793b18e0ae764b005377dd36858f898
Author: Moti Asayag <ma...@redhat.com>
AuthorDate: Thu Jan 11 17:01:50 2024 +0200

    Set selector and label specific to platform service (#341)
    
    Signed-off-by: Moti Asayag <ma...@redhat.com>
---
 controllers/platform/k8s.go | 28 +++++++++++++++++-----------
 workflowproj/operator.go    |  2 ++
 2 files changed, 19 insertions(+), 11 deletions(-)

diff --git a/controllers/platform/k8s.go b/controllers/platform/k8s.go
index c21b200f..d66155bf 100644
--- a/controllers/platform/k8s.go
+++ b/controllers/platform/k8s.go
@@ -135,12 +135,10 @@ func createDeployment(ctx context.Context, client client.Client, platform *opera
 	dataDeployContainer.Name = ps.GetContainerName()
 
 	replicas := ps.GetReplicaCount()
-	lbl := map[string]string{
-		workflowproj.LabelApp: platform.Name,
-	}
+	lbl, selectorLbl := getLabels(platform, ps)
 	dataDeploySpec := appsv1.DeploymentSpec{
 		Selector: &metav1.LabelSelector{
-			MatchLabels: lbl,
+			MatchLabels: selectorLbl,
 		},
 		Replicas: &replicas,
 		Template: corev1.PodTemplateSpec{
@@ -195,9 +193,7 @@ func createDeployment(ctx context.Context, client client.Client, platform *opera
 }
 
 func createService(ctx context.Context, client client.Client, platform *operatorapi.SonataFlowPlatform, ps services.Platform) error {
-	lbl := map[string]string{
-		workflowproj.LabelApp: platform.Name,
-	}
+	lbl, selectorLbl := getLabels(platform, ps)
 	dataSvcSpec := corev1.ServiceSpec{
 		Ports: []corev1.ServicePort{
 			{
@@ -207,7 +203,7 @@ func createService(ctx context.Context, client client.Client, platform *operator
 				TargetPort: common.DefaultHTTPWorkflowPortIntStr,
 			},
 		},
-		Selector: lbl,
+		Selector: selectorLbl,
 	}
 	dataSvc := &corev1.Service{
 		ObjectMeta: metav1.ObjectMeta{
@@ -233,18 +229,28 @@ func createService(ctx context.Context, client client.Client, platform *operator
 	return nil
 }
 
+func getLabels(platform *operatorapi.SonataFlowPlatform, ps services.Platform) (map[string]string, map[string]string) {
+	lbl := map[string]string{
+		workflowproj.LabelApp:     platform.Name,
+		workflowproj.LabelService: ps.GetServiceName(),
+	}
+	selectorLbl := map[string]string{
+		workflowproj.LabelService: ps.GetServiceName(),
+	}
+	return lbl, selectorLbl
+}
+
 func createConfigMap(ctx context.Context, client client.Client, platform *operatorapi.SonataFlowPlatform, ps services.Platform) error {
 	handler, err := services.NewServiceAppPropertyHandler(ps)
 	if err != nil {
 		return err
 	}
+	lbl, _ := getLabels(platform, ps)
 	configMap := &corev1.ConfigMap{
 		ObjectMeta: metav1.ObjectMeta{
 			Name:      ps.GetServiceCmName(),
 			Namespace: platform.Namespace,
-			Labels: map[string]string{
-				workflowproj.LabelApp: platform.Name,
-			},
+			Labels:    lbl,
 		},
 		Data: map[string]string{
 			workflowproj.ApplicationPropertiesFileName: handler.Build(),
diff --git a/workflowproj/operator.go b/workflowproj/operator.go
index 3509d7c3..46ff7ba3 100644
--- a/workflowproj/operator.go
+++ b/workflowproj/operator.go
@@ -34,6 +34,8 @@ const (
 	ApplicationPropertiesFileName = "application.properties"
 	// LabelApp key to use among object selectors, "app" is used among k8s applications to group objects in some UI consoles
 	LabelApp = "app"
+	// LabelService key to use among object selectors
+	LabelService = "sonataflow.org/service"
 	// LabelWorkflow specialized label managed by the controller
 	LabelWorkflow = metadata.Domain + "/workflow-app"
 )


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@kie.apache.org
For additional commands, e-mail: commits-help@kie.apache.org