This is an automated email from the ASF dual-hosted git repository.
wmedvedeo pushed a commit to branch 10.0.x
in repository https://gitbox.apache.org/repos/asf/incubator-kie-tools.git
The following commit(s) were added to refs/heads/10.0.x by this push:
new 2267595a11c [10.0.x] kie-tools-2483: sonataflow-quarkus-devui: send
the DevUI webapp a parameter to recognize we are in a local cluster (#2499)
2267595a11c is described below
commit 2267595a11c72ddb11f4f2fb4183359c77642aa2
Author: Walter Medvedeo <[email protected]>
AuthorDate: Fri Aug 2 11:40:58 2024 +0200
[10.0.x] kie-tools-2483: sonataflow-quarkus-devui: send the DevUI webapp a
parameter to recognize we are in a local cluster (#2499)
---
.../sonataflow-quarkus-devui-deployment/pom.xml | 4 ++++
.../swf/tools/deployment/DevConsoleProcessor.java | 14 ++++++++++----
.../resources/dev-ui/qwc-sonataflow-quarkus-devui.js | 3 ++-
.../rpc/SonataFlowQuarkusExtensionJsonRPCService.java | 16 ++++++++++++++--
4 files changed, 30 insertions(+), 7 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..fe0a4b1cbdc 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/";
@@ -108,11 +108,17 @@ public class DevConsoleProcessor {
String openapiPath = getProperty(configurationBuildItem,
systemPropertyBuildItems, "quarkus.smallrye-openapi.path");
String devUIUrl = getProperty(configurationBuildItem,
systemPropertyBuildItems, "kogito.dev-ui.url");
- String dataIndexUrl = getProperty(configurationBuildItem,
systemPropertyBuildItems, "kogito.data-index.url");
+ String dataIndexUrl = null;
cardPageBuildItem.addBuildTimeData("extensionBasePath", uiPath);
cardPageBuildItem.addBuildTimeData("openapiPath", openapiPath);
cardPageBuildItem.addBuildTimeData("devUIUrl", devUIUrl);
+ // temporary, set isLocalCluster always true since sonataflow-dev-ui
works in k8s cluster.
+ boolean isLocalCluster =
ConfigProvider.getConfig().getOptionalValue(IS_LOCAL_CLUSTER,
Boolean.class).orElse(true);
+ cardPageBuildItem.addBuildTimeData("isLocalCluster", isLocalCluster);
+ if (!isLocalCluster) {
+ dataIndexUrl = getProperty(configurationBuildItem,
systemPropertyBuildItems, "kogito.data-index.url");
+ }
cardPageBuildItem.addBuildTimeData("dataIndexUrl", dataIndexUrl);
cardPageBuildItem.addPage(Page.webComponentPageBuilder()
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 85b8d1ddcd7..bd5920665c1 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
@@ -18,7 +18,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 {
@@ -61,6 +61,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 5282a273b6e..7a7c50673ea 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
@@ -46,10 +46,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;
@@ -57,8 +61,12 @@ public class SonataFlowQuarkusExtensionJsonRPCService {
@PostConstruct
public void init() {
- Optional<String> dataIndexURL =
ConfigProvider.getConfig().getOptionalValue(DATA_INDEX_URL, String.class);
- dataIndexURL.ifPresent(this::initDataIndexWebClient);
+ //temporary, set isLocalCluster always true since sonataflow-dev-ui
works in k8s cluster.
+ isLocalCluster =
ConfigProvider.getConfig().getOptionalValue(IS_LOCAL_CLUSTER,
Boolean.class).orElse(true);
+ if (!isLocalCluster) {
+ Optional<String> dataIndexURL =
ConfigProvider.getConfig().getOptionalValue(DATA_INDEX_URL, String.class);
+ dataIndexURL.ifPresent(this::initDataIndexWebClient);
+ }
}
private void initDataIndexWebClient(String dataIndexURL) {
@@ -82,6 +90,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]