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-tools.git


The following commit(s) were added to refs/heads/main by this push:
     new 557d9719846 kie-tools-2483: sonataflow-quarkus-devui: send the DevUI 
webapp a parameter to recognize we are in a local cluster (#2492)
557d9719846 is described below

commit 557d97198461d8eecb18655901f77e8f3a75d4c5
Author: Walter Medvedeo <[email protected]>
AuthorDate: Tue Jul 30 16:54:11 2024 +0200

    kie-tools-2483: sonataflow-quarkus-devui: send the DevUI webapp a parameter 
to recognize we are in a local cluster (#2492)
---
 .../sonataflow-quarkus-devui-deployment/pom.xml           |  4 ++++
 .../swf/tools/deployment/DevConsoleProcessor.java         |  9 ++++++---
 .../main/resources/dev-ui/qwc-sonataflow-quarkus-devui.js |  3 ++-
 .../rpc/SonataFlowQuarkusExtensionJsonRPCService.java     | 15 +++++++++++++--
 4 files changed, 25 insertions(+), 6 deletions(-)

diff --git 
a/packages/sonataflow-quarkus-devui/sonataflow-quarkus-devui-deployment/pom.xml 
b/packages/sonataflow-quarkus-devui/sonataflow-quarkus-devui-deployment/pom.xml
index 60566dbebff..b9d9eaa5486 100644
--- 
a/packages/sonataflow-quarkus-devui/sonataflow-quarkus-devui-deployment/pom.xml
+++ 
b/packages/sonataflow-quarkus-devui/sonataflow-quarkus-devui-deployment/pom.xml
@@ -69,6 +69,10 @@
       <groupId>io.quarkus</groupId>
       <artifactId>quarkus-resteasy-multipart-deployment</artifactId>
     </dependency>
+    <dependency>
+      <groupId>org.apache.kie.sonataflow</groupId>
+      <artifactId>sonataflow-quarkus-devui</artifactId>
+    </dependency>
     <!-- Transitively imported by 
io.quarkus:quarkus-resteasy-multipart-deployment
          Overriding it to fix CVE-2024-21742
          Can be removed once the parent dependency updates it to a 0.8.11+ 
version -->
diff --git 
a/packages/sonataflow-quarkus-devui/sonataflow-quarkus-devui-deployment/src/main/java/org/kie/sonataflow/swf/tools/deployment/DevConsoleProcessor.java
 
b/packages/sonataflow-quarkus-devui/sonataflow-quarkus-devui-deployment/src/main/java/org/kie/sonataflow/swf/tools/deployment/DevConsoleProcessor.java
index 442a2407f65..c047eda5dc5 100644
--- 
a/packages/sonataflow-quarkus-devui/sonataflow-quarkus-devui-deployment/src/main/java/org/kie/sonataflow/swf/tools/deployment/DevConsoleProcessor.java
+++ 
b/packages/sonataflow-quarkus-devui/sonataflow-quarkus-devui-deployment/src/main/java/org/kie/sonataflow/swf/tools/deployment/DevConsoleProcessor.java
@@ -19,14 +19,12 @@
 package org.kie.sonataflow.swf.tools.deployment;
 
 import java.io.IOException;
-import java.net.URLEncoder;
-import java.nio.charset.StandardCharsets;
 import java.nio.file.Path;
 import java.util.List;
-import java.util.Optional;
 
 import io.quarkus.deployment.Capabilities;
 import io.quarkus.devui.spi.JsonRPCProvidersBuildItem;
+import org.eclipse.microprofile.config.ConfigProvider;
 import 
org.kie.sonataflow.swf.tools.runtime.config.DevUIStaticArtifactsRecorder;
 
 import io.quarkus.deployment.IsDevelopment;
@@ -49,6 +47,8 @@ import io.quarkus.vertx.http.deployment.RouteBuildItem;
 import 
io.quarkus.vertx.http.runtime.management.ManagementInterfaceBuildTimeConfig;
 import 
org.kie.sonataflow.swf.tools.runtime.rpc.SonataFlowQuarkusExtensionJsonRPCService;
 
+import static 
org.kie.sonataflow.swf.tools.runtime.rpc.SonataFlowQuarkusExtensionJsonRPCService.IS_LOCAL_CLUSTER;
+
 public class DevConsoleProcessor {
 
     private static final String STATIC_RESOURCES_PATH = "dev-static/";
@@ -115,6 +115,9 @@ public class DevConsoleProcessor {
         cardPageBuildItem.addBuildTimeData("devUIUrl", devUIUrl);
         cardPageBuildItem.addBuildTimeData("dataIndexUrl", dataIndexUrl);
 
+        boolean isLocalCluster = 
ConfigProvider.getConfig().getOptionalValue(IS_LOCAL_CLUSTER, 
Boolean.class).orElse(false);
+        cardPageBuildItem.addBuildTimeData("isLocalCluster", isLocalCluster);
+
         cardPageBuildItem.addPage(Page.webComponentPageBuilder()
                                           
.componentLink("qwc-sonataflow-quarkus-devui.js")
                                           .metadata("page", "Workflows")
diff --git 
a/packages/sonataflow-quarkus-devui/sonataflow-quarkus-devui-deployment/src/main/resources/dev-ui/qwc-sonataflow-quarkus-devui.js
 
b/packages/sonataflow-quarkus-devui/sonataflow-quarkus-devui-deployment/src/main/resources/dev-ui/qwc-sonataflow-quarkus-devui.js
index 2e9b530ea18..a9075811e52 100644
--- 
a/packages/sonataflow-quarkus-devui/sonataflow-quarkus-devui-deployment/src/main/resources/dev-ui/qwc-sonataflow-quarkus-devui.js
+++ 
b/packages/sonataflow-quarkus-devui/sonataflow-quarkus-devui-deployment/src/main/resources/dev-ui/qwc-sonataflow-quarkus-devui.js
@@ -15,7 +15,7 @@
  */
 
 import { html, LitElement } from "lit";
-import { dataIndexUrl, devUIUrl, extensionBasePath, openapiPath } from 
"build-time-data";
+import { dataIndexUrl, devUIUrl, extensionBasePath, openapiPath, 
isLocalCluster } from "build-time-data";
 import { RouterController } from "router-controller";
 
 export class QwcSonataflowQuarkusDevui extends LitElement {
@@ -58,6 +58,7 @@ export class QwcSonataflowQuarkusDevui extends LitElement {
       openApiBaseUrl: `${devUIUrl ?? window.location.origin}`,
       openApiPath: `${openapiPath ?? "q/openapi.json"}`,
       availablePages: ["Workflows", "Monitoring", "CustomDashboard"],
+      isLocalCluster: isLocalCluster ?? false,
     });
   }
 }
diff --git 
a/packages/sonataflow-quarkus-devui/sonataflow-quarkus-devui/src/main/java/org/kie/sonataflow/swf/tools/runtime/rpc/SonataFlowQuarkusExtensionJsonRPCService.java
 
b/packages/sonataflow-quarkus-devui/sonataflow-quarkus-devui/src/main/java/org/kie/sonataflow/swf/tools/runtime/rpc/SonataFlowQuarkusExtensionJsonRPCService.java
index 92d7091aece..d148ba7aa0c 100644
--- 
a/packages/sonataflow-quarkus-devui/sonataflow-quarkus-devui/src/main/java/org/kie/sonataflow/swf/tools/runtime/rpc/SonataFlowQuarkusExtensionJsonRPCService.java
+++ 
b/packages/sonataflow-quarkus-devui/sonataflow-quarkus-devui/src/main/java/org/kie/sonataflow/swf/tools/runtime/rpc/SonataFlowQuarkusExtensionJsonRPCService.java
@@ -43,10 +43,14 @@ public class SonataFlowQuarkusExtensionJsonRPCService {
 
     public static final String ALL_WORKFLOWS_IDS_QUERY = "{ \"operationName\": 
\"getAllProcessesIds\", \"query\": \"query getAllProcessesIds{  
ProcessInstances{ id } }\" }";
 
+    public static final String IS_LOCAL_CLUSTER = 
"sonataflow.devui.isLocalCluster";
+
     private WebClient dataIndexWebClient;
 
     private final Vertx vertx;
 
+    private boolean isLocalCluster;
+
     @Inject
     public SonataFlowQuarkusExtensionJsonRPCService(Vertx vertx) {
         this.vertx = vertx;
@@ -54,8 +58,11 @@ public class SonataFlowQuarkusExtensionJsonRPCService {
 
     @PostConstruct
     public void init() {
-        Optional<String> dataIndexURL = 
ConfigProvider.getConfig().getOptionalValue(DATA_INDEX_URL, String.class);
-        dataIndexURL.ifPresent(this::initDataIndexWebClient);
+        isLocalCluster = 
ConfigProvider.getConfig().getOptionalValue(IS_LOCAL_CLUSTER, 
Boolean.class).orElse(false);
+        if (!isLocalCluster) {
+            Optional<String> dataIndexURL = 
ConfigProvider.getConfig().getOptionalValue(DATA_INDEX_URL, String.class);
+            dataIndexURL.ifPresent(this::initDataIndexWebClient);
+        }
     }
 
     private void initDataIndexWebClient(String dataIndexURL) {
@@ -79,6 +86,10 @@ public class SonataFlowQuarkusExtensionJsonRPCService {
     }
 
     private Uni<String> doQuery(String query, String graphModelName) {
+        if (isLocalCluster) {
+            LOGGER.info("Workflows count in the Workflows card is disabled for 
local cluster mode");
+            return Uni.createFrom().item("-");
+        }
         if(dataIndexWebClient == null) {
             LOGGER.warn("Cannot perform '{}' query, dataIndexWebClient 
couldn't be set. Is DataIndex correctly? Please verify '{}' value", 
graphModelName, DATA_INDEX_URL);
             return Uni.createFrom().item("-");


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

Reply via email to