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

ricardozanini pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/incubator-kie-tools.git


The following commit(s) were added to refs/heads/main by this push:
     new f83a341ec95 kie-issues-3038: SonataFlow Dev UI is not accessible after 
migration to Quarkus 3.15.3 (#3039)
f83a341ec95 is described below

commit f83a341ec9587ad87cea6d800fdda10271848029
Author: Walter Medvedeo <[email protected]>
AuthorDate: Thu Apr 3 14:57:16 2025 +0200

    kie-issues-3038: SonataFlow Dev UI is not accessible after migration to 
Quarkus 3.15.3 (#3039)
---
 .../profiles/common/constants/workflows.go         | 29 ++++++++++------------
 .../profiles/common/properties/managed.go          |  8 ++++--
 .../internal/controller/profiles/dev/states_dev.go | 13 +++++-----
 3 files changed, 26 insertions(+), 24 deletions(-)

diff --git 
a/packages/sonataflow-operator/internal/controller/profiles/common/constants/workflows.go
 
b/packages/sonataflow-operator/internal/controller/profiles/common/constants/workflows.go
index 11be4c5270b..d9368782d8c 100644
--- 
a/packages/sonataflow-operator/internal/controller/profiles/common/constants/workflows.go
+++ 
b/packages/sonataflow-operator/internal/controller/profiles/common/constants/workflows.go
@@ -18,20 +18,17 @@
 package constants
 
 const (
-       MicroprofileServiceCatalogPropertyPrefix      = 
"org.kie.kogito.addons.discovery."
-       KogitoOutgoingEventsURL                       = 
"mp.messaging.outgoing.kogito_outgoing_stream.url"
-       KogitoOutgoingEventsConnector                 = 
"mp.messaging.outgoing.kogito_outgoing_stream.connector"
-       KogitoIncomingEventsConnector                 = 
"mp.messaging.incoming.kogito_incoming_stream.connector"
-       KogitoIncomingEventsPath                      = 
"mp.messaging.incoming.kogito_incoming_stream.path"
-       KnativeHealthEnabled                          = 
"org.kie.kogito.addons.knative.eventing.health-enabled"
-       KnativeInjectedEnvVar                         = "${K_SINK}"
-       TriggerFinalizer                              = "trigger-deletion"
-       WorkflowFinalizer                             = "workflow-deletion"
-       QuarkusDevUICorsEnabled                       = 
"quarkus.dev-ui.cors.enabled"
-       QuarkusHttpCors                               = "quarkus.http.cors"
-       QuarkusHttpCorsOrigins                        = 
"quarkus.http.cors.origins"
-       KogitoEventsGrouping                          = "kogito.events.grouping"
-       KogitoEventsGroupingBinary                    = 
"kogito.events.grouping.binary"
-       KogitoEventsGroupingCompress                  = 
"kogito.events.grouping.compress"
-       SendWorkflowDefinitionsStatusUpdateEventError = "An error was produced 
while sending a workflow definition status change event."
+       KogitoOutgoingEventsURL       = 
"mp.messaging.outgoing.kogito_outgoing_stream.url"
+       KogitoOutgoingEventsConnector = 
"mp.messaging.outgoing.kogito_outgoing_stream.connector"
+       KogitoIncomingEventsConnector = 
"mp.messaging.incoming.kogito_incoming_stream.connector"
+       KogitoIncomingEventsPath      = 
"mp.messaging.incoming.kogito_incoming_stream.path"
+       KnativeHealthEnabled          = 
"org.kie.kogito.addons.knative.eventing.health-enabled"
+       KnativeInjectedEnvVar         = "${K_SINK}"
+       TriggerFinalizer              = "trigger-deletion"
+       WorkflowFinalizer             = "workflow-deletion"
+       QuarkusDevUICorsEnabled       = "quarkus.dev-ui.cors.enabled"
+       QuarkusDevUIHosts             = "quarkus.dev-ui.hosts"
+       KogitoEventsGrouping          = "kogito.events.grouping"
+       KogitoEventsGroupingBinary    = "kogito.events.grouping.binary"
+       KogitoEventsGroupingCompress  = "kogito.events.grouping.compress"
 )
diff --git 
a/packages/sonataflow-operator/internal/controller/profiles/common/properties/managed.go
 
b/packages/sonataflow-operator/internal/controller/profiles/common/properties/managed.go
index 545c2c47019..fb98899e81b 100644
--- 
a/packages/sonataflow-operator/internal/controller/profiles/common/properties/managed.go
+++ 
b/packages/sonataflow-operator/internal/controller/profiles/common/properties/managed.go
@@ -22,6 +22,7 @@ package properties
 import (
        "context"
        "fmt"
+       "net/url"
 
        
"github.com/apache/incubator-kie-tools/packages/sonataflow-operator/internal/controller/cfg"
 
@@ -239,8 +240,11 @@ func setDevProfileDiscoveryProperties(ctx context.Context, 
catalog discovery.Ser
                if err != nil {
                        klog.V(log.E).ErrorS(err, "An error was produced while 
getting workflow route url. ", "workflow", workflow.Name)
                } else {
-                       props.Set(constants.QuarkusHttpCors, "true")
-                       props.Set(constants.QuarkusHttpCorsOrigins, routeUrl)
+                       if url, err := url.Parse(routeUrl); err != nil {
+                               klog.V(log.E).ErrorS(err, "An error was 
produced while parsing workflow route url. ", "workflow", workflow.Name)
+                       } else {
+                               props.Set(constants.QuarkusDevUIHosts, url.Host)
+                       }
                }
        }
 }
diff --git 
a/packages/sonataflow-operator/internal/controller/profiles/dev/states_dev.go 
b/packages/sonataflow-operator/internal/controller/profiles/dev/states_dev.go
index 457dc34cb2e..40027740b2a 100644
--- 
a/packages/sonataflow-operator/internal/controller/profiles/dev/states_dev.go
+++ 
b/packages/sonataflow-operator/internal/controller/profiles/dev/states_dev.go
@@ -78,6 +78,13 @@ func (e *ensureRunningWorkflowState) Do(ctx context.Context, 
workflow *operatora
        if pl != nil && len(pl.Spec.DevMode.BaseImage) > 0 {
                devBaseContainerImage = pl.Spec.DevMode.BaseImage
        }
+       // make the route available before the properties calculation
+       route, _, err := e.ensurers.network.Ensure(ctx, workflow)
+       if err != nil {
+               return ctrl.Result{RequeueAfter: 
constants.RequeueAfterFailure}, objs, err
+       }
+       objs = append(objs, route)
+
        userPropsCM, _, err := e.ensurers.userPropsConfigMap.Ensure(ctx, 
workflow)
        if err != nil {
                return ctrl.Result{Requeue: false}, objs, err
@@ -120,12 +127,6 @@ func (e *ensureRunningWorkflowState) Do(ctx 
context.Context, workflow *operatora
                objs = append(objs, serviceMonitor)
        }
 
-       route, _, err := e.ensurers.network.Ensure(ctx, workflow)
-       if err != nil {
-               return ctrl.Result{RequeueAfter: 
constants.RequeueAfterFailure}, objs, err
-       }
-       objs = append(objs, route)
-
        // First time reconciling this object, mark as wait for deployment
        if workflow.Status.GetTopLevelCondition().IsUnknown() {
                klog.V(log.I).InfoS("Workflow is in WaitingForDeployment 
Condition")


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to