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

marat pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/camel-karavan.git


The following commit(s) were added to refs/heads/main by this push:
     new 9534b0a1 Fixes
9534b0a1 is described below

commit 9534b0a12a51d8663bb920b7fc923f58b466861a
Author: Marat Gubaidullin <ma...@talismancloud.io>
AuthorDate: Mon Jul 22 09:51:49 2024 -0400

    Fixes
---
 .../org/apache/camel/karavan/KaravanConstants.java |  1 +
 .../karavan/kubernetes/KubernetesService.java      |  4 +-
 .../apache/camel/karavan/service/CodeService.java  |  2 +-
 .../camel/karavan/service/ProjectService.java      |  5 ++-
 .../src/main/webui/src/api/NotificationService.ts  |  4 +-
 .../src/main/webui/src/api/ProjectService.ts       |  3 +-
 .../webui/src/designer/route/DslConnections.tsx    | 44 +++++++++++-----------
 .../src/knowledgebase/components/ComponentCard.tsx | 25 +++++++-----
 .../src/main/webui/src/project/DevModeToolbar.tsx  | 18 +--------
 .../src/main/webui/src/project/ProjectPage.tsx     | 25 +++++++-----
 .../src/main/webui/src/project/ProjectPanel.tsx    |  2 +-
 .../webui/src/project/dashboard/DashboardTab.tsx   |  7 ++--
 .../src/main/webui/src/project/trace/TraceTab.tsx  |  4 +-
 .../src/main/webui/src/projects/ProjectsPage.tsx   |  6 ++-
 karavan-app/src/main/webui/src/util/CodeUtils.ts   |  2 +-
 15 files changed, 79 insertions(+), 73 deletions(-)

diff --git 
a/karavan-app/src/main/java/org/apache/camel/karavan/KaravanConstants.java 
b/karavan-app/src/main/java/org/apache/camel/karavan/KaravanConstants.java
index 68e6f031..756a558a 100644
--- a/karavan-app/src/main/java/org/apache/camel/karavan/KaravanConstants.java
+++ b/karavan-app/src/main/java/org/apache/camel/karavan/KaravanConstants.java
@@ -33,6 +33,7 @@ public class KaravanConstants {
 
     public static final String CAMEL_PREFIX = "camel";
 
+    public static final String BUILD_SCRIPT_VOLUME_NAME = "build-script";
     public static final String BUILD_SCRIPT_CONFIG_MAP = "build.sh";
     public static final String BUILD_DOCKER_CONFIG_SECRET = "dockerconfigjson";
     public static final String PRIVATE_KEY_SECRET_KEY = "private-key";
diff --git 
a/karavan-app/src/main/java/org/apache/camel/karavan/kubernetes/KubernetesService.java
 
b/karavan-app/src/main/java/org/apache/camel/karavan/kubernetes/KubernetesService.java
index 25702ff5..75327b14 100644
--- 
a/karavan-app/src/main/java/org/apache/camel/karavan/kubernetes/KubernetesService.java
+++ 
b/karavan-app/src/main/java/org/apache/camel/karavan/kubernetes/KubernetesService.java
@@ -171,7 +171,7 @@ public class KubernetesService {
 
 
         List<VolumeMount> volumeMounts = new ArrayList<>();
-        volumeMounts.add(new 
VolumeMountBuilder().withName(BUILD_SCRIPT_CONFIG_MAP).withMountPath("/karavan/builder").withReadOnly(true).build());
+        volumeMounts.add(new 
VolumeMountBuilder().withName(BUILD_SCRIPT_VOLUME_NAME).withMountPath("/karavan/builder").withReadOnly(true).build());
         if (hasDockerConfigSecret) {
             volumeMounts.add(new 
VolumeMountBuilder().withName(BUILD_DOCKER_CONFIG_SECRET).withMountPath("/karavan/.docker").withReadOnly(true).build());
         }
@@ -192,7 +192,7 @@ public class KubernetesService {
                 .build();
 
         List<Volume> volumes = new ArrayList<>();
-        volumes.add(new VolumeBuilder().withName(BUILD_SCRIPT_CONFIG_MAP)
+        volumes.add(new VolumeBuilder().withName(BUILD_SCRIPT_VOLUME_NAME)
                 .withConfigMap(new 
ConfigMapVolumeSourceBuilder().withName(BUILD_SCRIPT_CONFIG_MAP).withItems(
                         new 
KeyToPathBuilder().withKey(BUILD_SCRIPT_FILENAME).withPath(BUILD_SCRIPT_FILENAME).build()
                 ).withDefaultMode(511).build()).build());
diff --git 
a/karavan-app/src/main/java/org/apache/camel/karavan/service/CodeService.java 
b/karavan-app/src/main/java/org/apache/camel/karavan/service/CodeService.java
index 9bd89a45..f4fd13f7 100644
--- 
a/karavan-app/src/main/java/org/apache/camel/karavan/service/CodeService.java
+++ 
b/karavan-app/src/main/java/org/apache/camel/karavan/service/CodeService.java
@@ -239,7 +239,7 @@ public class CodeService {
     public String getResourceFile(String path) {
         try (InputStream inputStream = 
CodeService.class.getResourceAsStream(path);
              BufferedReader reader = new BufferedReader(new 
InputStreamReader(inputStream))) {
-            return 
reader.lines().collect(Collectors.joining(System.lineSeparator()));
+             return 
reader.lines().collect(Collectors.joining(System.lineSeparator()));
         } catch (Exception e) {
             return null;
         }
diff --git 
a/karavan-app/src/main/java/org/apache/camel/karavan/service/ProjectService.java
 
b/karavan-app/src/main/java/org/apache/camel/karavan/service/ProjectService.java
index 18a6b2f2..bd2b3916 100644
--- 
a/karavan-app/src/main/java/org/apache/camel/karavan/service/ProjectService.java
+++ 
b/karavan-app/src/main/java/org/apache/camel/karavan/service/ProjectService.java
@@ -292,7 +292,10 @@ public class ProjectService {
     private int getMaxPortMappedInProjects() {
         try {
             List<ProjectFile> files = 
karavanCache.getProjectFilesByName(PROJECT_COMPOSE_FILENAME).stream()
-                    .filter(f -> !Objects.equals(f.getProjectId(), 
Project.Type.templates.name())).toList();
+                    .filter(f -> !Objects.equals(f.getProjectId(), 
Project.Type.templates.name()))
+                    .filter(f -> !Objects.equals(f.getProjectId(), 
Project.Type.kamelets.name()))
+                    .filter(f -> !Objects.equals(f.getProjectId(), 
Project.Type.configuration.name()))
+                    .toList();
             if (!files.isEmpty()) {
                 return files.stream().map(this::getProjectPort)
                         .filter(Objects::nonNull)
diff --git a/karavan-app/src/main/webui/src/api/NotificationService.ts 
b/karavan-app/src/main/webui/src/api/NotificationService.ts
index 75fe5553..ccb31750 100644
--- a/karavan-app/src/main/webui/src/api/NotificationService.ts
+++ b/karavan-app/src/main/webui/src/api/NotificationService.ts
@@ -55,7 +55,9 @@ const sub = NotificationEventBus.onEvent()?.subscribe((event: 
KaravanEvent) => {
         }
     } else if (event.event === 'imagesLoaded') {
         const projectId = event.data?.projectId;
-        EventBus.sendAlert('Success', 'Image loaded for ' + projectId);
+        unstable_batchedUpdates(() => {
+            ProjectService.refreshImages(projectId);
+        });
     } else if (event.event === 'error') {
         const error = event.data?.error;
         EventBus.sendAlert('Error', error, "danger");
diff --git a/karavan-app/src/main/webui/src/api/ProjectService.ts 
b/karavan-app/src/main/webui/src/api/ProjectService.ts
index f936e578..97a33b3d 100644
--- a/karavan-app/src/main/webui/src/api/ProjectService.ts
+++ b/karavan-app/src/main/webui/src/api/ProjectService.ts
@@ -42,7 +42,6 @@ export class ProjectService {
                 ProjectEventBus.sendLog('set', '');
                 useLogStore.setState({showLog: true, type: 'container', 
podName: res.data})
             } else {
-                console.log(res);
                 // EventBus.sendAlert('Error Starting DevMode container', 
res.statusText, 'warning')
             }
         });
@@ -187,7 +186,7 @@ export class ProjectService {
     public static refreshContainerStatus(projectId: string, env: string) {
         KaravanApi.getContainerStatus(projectId, env, (res) => {
             if (res.status === 200) {
-                const oldContainers = useStatusesStore.getState().containers;
+                const oldContainers = 
[...useStatusesStore.getState().containers];
                 const newContainers = res.data;
                 const newMap = new Map<string, ContainerStatus>(
                     newContainers.map(container => [container.containerName, 
container])
diff --git a/karavan-app/src/main/webui/src/designer/route/DslConnections.tsx 
b/karavan-app/src/main/webui/src/designer/route/DslConnections.tsx
index 2d08cb58..596a7d0c 100644
--- a/karavan-app/src/main/webui/src/designer/route/DslConnections.tsx
+++ b/karavan-app/src/main/webui/src/designer/route/DslConnections.tsx
@@ -239,13 +239,13 @@ export function DslConnections() {
             const isInternal = data[2] === 'internal';
             const isNav = data[2] === 'nav';
             return (!isInternal
-                ? <g key={pos.step.uuid + "-outgoing"}>
-                    <circle cx={outgoingX} cy={outgoingY} r={r} 
className="circle-outgoing"/>
-                    <path
-                        d={`M ${lineX1},${lineY1} C ${lineXi - 20}, ${lineY1} 
${lineX1 - RADIUS},${lineYi} ${lineXi},${lineYi} L ${lineX2},${lineY2}`}
-                        className={isNav ? 'path-incoming-nav' : 
'path-incoming'} markerEnd="url(#arrowhead)"/>
-                </g>
-                : <></>
+                    ? <g key={pos.step.uuid + "-outgoing"}>
+                        <circle cx={outgoingX} cy={outgoingY} r={r} 
className="circle-outgoing"/>
+                        <path
+                            d={`M ${lineX1},${lineY1} C ${lineXi - 20}, 
${lineY1} ${lineX1 - RADIUS},${lineYi} ${lineXi},${lineYi} L 
${lineX2},${lineY2}`}
+                            className={isNav ? 'path-incoming-nav' : 
'path-incoming'} markerEnd="url(#arrowhead)"/>
+                    </g>
+                    : <></>
             )
         }
     }
@@ -265,21 +265,21 @@ export function DslConnections() {
             const imageX = outgoingX - r + 6;
             const imageY = outgoingY - r + 6;
             return (!isInternal
-                ? <div key={pos.step.uuid + "-icon"}
-                     style={{display: "block", position: "absolute", top: 
imageY, left: imageX}}>
-                    {CamelUi.getConnectionIcon(pos.step)}
-                    {name !== undefined &&
-                        <Tooltip content={`Go to ${uri}:${name}`} 
position={"left"}>
-                            <Button style={{position: 'absolute', right: 27, 
top: -12, whiteSpace: 'nowrap', zIndex: 300, padding: 0}}
-                                    variant={'link'}
-                                    aria-label="Goto"
-                                    onClick={_ => 
InfrastructureAPI.onInternalConsumerClick(uri, name, undefined)}>
-                                {name}
-                            </Button>
-                        </Tooltip>
-                    }
-                </div>
-                : <></>
+                    ? <div key={pos.step.uuid + "-icon"}
+                           style={{display: "block", position: "absolute", 
top: imageY, left: imageX}}>
+                        {CamelUi.getConnectionIcon(pos.step)}
+                        {name !== undefined &&
+                            <Tooltip content={`Go to ${uri}:${name}`} 
position={"left"}>
+                                <Button style={{position: 'absolute', right: 
27, top: -12, whiteSpace: 'nowrap', zIndex: 300, padding: 0}}
+                                        variant={'link'}
+                                        aria-label="Goto"
+                                        onClick={_ => 
InfrastructureAPI.onInternalConsumerClick(uri, name, undefined)}>
+                                    {name}
+                                </Button>
+                            </Tooltip>
+                        }
+                    </div>
+                    : <></>
             )
         }
     }
diff --git 
a/karavan-app/src/main/webui/src/knowledgebase/components/ComponentCard.tsx 
b/karavan-app/src/main/webui/src/knowledgebase/components/ComponentCard.tsx
index 8794ef1e..c9f39d04 100644
--- a/karavan-app/src/main/webui/src/knowledgebase/components/ComponentCard.tsx
+++ b/karavan-app/src/main/webui/src/knowledgebase/components/ComponentCard.tsx
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-import React, { useEffect, useState } from 'react';
+import React, {useEffect, useState} from 'react';
 import {
     CardHeader, Card, CardTitle, CardBody, CardFooter, Badge, Checkbox, Flex
 } from '@patternfly/react-core';
@@ -23,7 +23,7 @@ import {CamelUi} from "../../designer/utils/CamelUi";
 import {Component} from "karavan-core/lib/model/ComponentModels";
 import {useKnowledgebaseStore} from "../KnowledgebaseStore";
 import {shallow} from "zustand/shallow";
-import { ComponentApi } from 'karavan-core/lib/api/ComponentApi';
+import {ComponentApi} from 'karavan-core/lib/api/ComponentApi';
 
 interface Props {
     component: Component,
@@ -39,32 +39,39 @@ export function ComponentCard(props: Props) {
     useEffect(() => {
         setBlockedComponents(ComponentApi.getBlockedComponentNames());
     }, []);
-    
+
 
     function click(event: React.MouseEvent) {
-        const { target } = event;
+        const {target} = event;
         if (!(target as 
HTMLElement).parentElement?.className.includes("block-checkbox")) {
             setComponent(component)
             setModalOpen(true);
         }
     }
+
     function selectComponent(event: React.FormEvent, checked: boolean) {
         props.onChange(component.component.name, checked);
-         setBlockedComponents([...ComponentApi.getBlockedComponentNames()]);
+        setBlockedComponents([...ComponentApi.getBlockedComponentNames()]);
     }
+
     const isBlockedComponent = blockedComponents ? 
blockedComponents.findIndex(r => r === component.component.name) > -1 : false;
-    const isRemote =  component.component.remote;
+    const isRemote = component.component.remote;
     return (
         <Card isCompact key={component.component.name} className="kamelet-card"
               onClick={event => click(event)}
         >
             <CardHeader className="header-labels">
-                <Flex style={{width:'100%'}} gap={{default:'gapSm'}} 
justifyContent={{default: 'justifyContentSpaceBetween'}}>
+                <Flex style={{width: '100%'}} gap={{default: 'gapSm'}} 
justifyContent={{default: 'justifyContentSpaceBetween'}}>
                     <Badge isRead className="support-level 
labels">{component.component.supportLevel}</Badge>
                     <Badge isRead className="version 
labels">{component.component.version}</Badge>
                 </Flex>
-                {showBlockCheckbox && <Checkbox id={component.component.name} 
className="block-checkbox labels"
-                           isChecked={!isBlockedComponent} onChange={(_, 
checked) => selectComponent(_, checked)}/>}
+                {showBlockCheckbox &&
+                    <Checkbox id={component.component.name}
+                              className="block-checkbox labels"
+                              isChecked={!isBlockedComponent}
+                              onChange={(_, checked) => selectComponent(_, 
checked)}
+                    />
+                }
             </CardHeader>
             <CardHeader>
                 {CamelUi.getIconForComponent(component.component.title, 
component.component.label)}
diff --git a/karavan-app/src/main/webui/src/project/DevModeToolbar.tsx 
b/karavan-app/src/main/webui/src/project/DevModeToolbar.tsx
index 84f3eff4..f98fda4a 100644
--- a/karavan-app/src/main/webui/src/project/DevModeToolbar.tsx
+++ b/karavan-app/src/main/webui/src/project/DevModeToolbar.tsx
@@ -67,27 +67,11 @@ export function DevModeToolbar(props: Props) {
     const icon = (isRunning || allRunning) ? <UpIcon/> : <DownIcon/>;
     const inDevMode = containerDevMode?.type === 'devmode';
 
-    useEffect(() => {
-        const interval = setInterval(() => {
-            refreshContainer();
-        }, 1300)
-        return () => clearInterval(interval);
-    }, [currentContainerStatus, containers]);
-
     useEffect(() => {
         if (showSpinner && currentContainerStatus === undefined && 
containerDevMode === undefined) {
             setShowSpinner(false);
         }
-    }, [currentContainerStatus]);
-
-    function refreshContainer(){
-        ProjectService.refreshContainerStatus(project.projectId, 
config.environment);
-        ProjectService.refreshCamelStatus(project.projectId, 
config.environment);
-        if (refreshTrace) {
-            ProjectService.refreshCamelTraces(project.projectId, 
config.environment);
-        }
-        setCurrentContainerStatus(containerDevMode);
-    }
+    }, [currentContainerStatus, refreshTrace]);
 
     return (<Flex className="toolbar" direction={{default: "row"}} 
alignItems={{default: "alignItemsCenter"}}>
         {showSpinner && inDevMode && <FlexItem 
className="dev-action-button-place refresher">
diff --git a/karavan-app/src/main/webui/src/project/ProjectPage.tsx 
b/karavan-app/src/main/webui/src/project/ProjectPage.tsx
index 46795370..ac757f40 100644
--- a/karavan-app/src/main/webui/src/project/ProjectPage.tsx
+++ b/karavan-app/src/main/webui/src/project/ProjectPage.tsx
@@ -42,8 +42,8 @@ export function ProjectPage() {
     const {file, operation} = useFileStore();
     const [files] = useFilesStore((s) => [s.files], shallow);
     const [projects] = useProjectsStore((state) => [state.projects], shallow)
-    const [project, setProject, tabIndex, setTabIndex] =
-        useProjectStore((s) => [s.project, s.setProject, s.tabIndex, 
s.setTabIndex], shallow);
+    const [project, setProject, tabIndex, setTabIndex, refreshTrace] =
+        useProjectStore((s) => [s.project, s.setProject, s.tabIndex, 
s.setTabIndex, s.refreshTrace], shallow);
 
     let {projectId} = useParams();
 
@@ -60,14 +60,21 @@ export function ProjectPage() {
     }, []);
 
     useEffect(() => {
-        const interval = setInterval(() => {
-            if (tabIndex === 'build' || tabIndex === 'container') {
-                ProjectService.refreshAllDeploymentStatuses();
-                ProjectService.refreshImages(project.projectId);
-            }
-        }, 2000)
+        const interval = setInterval(() => refreshData(), 1300)
         return () => clearInterval(interval);
-    }, [tabIndex]);
+    }, [tabIndex, refreshTrace, project]);
+
+    function refreshData(){
+        ProjectService.refreshAllContainerStatuses();
+        if (tabIndex === 'build' || tabIndex === 'container') {
+            ProjectService.refreshAllDeploymentStatuses();
+            ProjectService.refreshImages(project.projectId);
+        } else if (tabIndex === 'dashboard') {
+            ProjectService.refreshCamelStatus(project.projectId, 
config.environment);
+        } else if (tabIndex === 'trace' && refreshTrace) {
+            ProjectService.refreshCamelTraces(project.projectId, 
config.environment);
+        }
+    }
 
     function isBuildIn(): boolean {
         return BUILD_IN_PROJECTS.includes(project.projectId);
diff --git a/karavan-app/src/main/webui/src/project/ProjectPanel.tsx 
b/karavan-app/src/main/webui/src/project/ProjectPanel.tsx
index d87c6d9c..5f9d1d73 100644
--- a/karavan-app/src/main/webui/src/project/ProjectPanel.tsx
+++ b/karavan-app/src/main/webui/src/project/ProjectPanel.tsx
@@ -99,7 +99,7 @@ export function ProjectPanel() {
                 <Flex direction={{default: "column"}} spaceItems={{default: 
"spaceItemsNone"}}>
                     {tab === 'files' && <FlexItem><FilesTab/></FlexItem>}
                     {!buildIn && tab === 'dashboard' && project && 
<FlexItem><DashboardTab/></FlexItem>}
-                    {!buildIn && tab === 'trace' && project && 
<FlexItem><TraceTab/></FlexItem>}
+                    {!buildIn && tab === 'trace' && project && <TraceTab/>}
                     {!buildIn && tab === 'build' && 
<FlexItem><ProjectBuildTab/></FlexItem>}
                     {!buildIn && tab === 'build' && config.infrastructure !== 
'kubernetes' &&
                         <FlexItem><ImagesPanel/></FlexItem>}
diff --git a/karavan-app/src/main/webui/src/project/dashboard/DashboardTab.tsx 
b/karavan-app/src/main/webui/src/project/dashboard/DashboardTab.tsx
index e05795d8..3bdffead 100644
--- a/karavan-app/src/main/webui/src/project/dashboard/DashboardTab.tsx
+++ b/karavan-app/src/main/webui/src/project/dashboard/DashboardTab.tsx
@@ -14,7 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-import React from 'react';
+import React, {useEffect} from 'react';
 import {
     Card,
     CardBody,
@@ -26,7 +26,7 @@ import {
     EmptyStateVariant,
     EmptyStateHeader,
     EmptyStateIcon,
-    Bullseye, Panel
+    Bullseye
 } from '@patternfly/react-core';
 import '../../designer/karavan.css';
 import {InfoContainer} from "./InfoContainer";
@@ -38,8 +38,7 @@ import SearchIcon from 
"@patternfly/react-icons/dist/esm/icons/search-icon";
 
 export function DashboardTab() {
 
-    const [project, camelStatuses] = useProjectStore((state) =>
-        [state.project, state.camelStatuses], shallow);
+    const [project] = useProjectStore((state) => [state.project], shallow);
     const [containers] = useStatusesStore((state) => [state.containers], 
shallow);
 
     const camelContainers = containers
diff --git a/karavan-app/src/main/webui/src/project/trace/TraceTab.tsx 
b/karavan-app/src/main/webui/src/project/trace/TraceTab.tsx
index 2736df4d..6bdf8489 100644
--- a/karavan-app/src/main/webui/src/project/trace/TraceTab.tsx
+++ b/karavan-app/src/main/webui/src/project/trace/TraceTab.tsx
@@ -34,8 +34,8 @@ import {TraceTable} from "./TraceTable";
 
 export function TraceTab() {
 
-    const [project, refreshTrace, setRefreshTrace, camelStatuses] = 
useProjectStore((state) =>
-        [state.project, state.refreshTrace, state.setRefreshTrace, 
state.camelStatuses], shallow);
+    const [project, refreshTrace, setRefreshTrace] = useProjectStore((state) =>
+        [state.project, state.refreshTrace, state.setRefreshTrace], shallow);
     const [containers] = useStatusesStore((state) => [state.containers], 
shallow);
     const [containerName, setContainerName] = useState<string>();
 
diff --git a/karavan-app/src/main/webui/src/projects/ProjectsPage.tsx 
b/karavan-app/src/main/webui/src/projects/ProjectsPage.tsx
index 33b2a74b..c7abfbe0 100644
--- a/karavan-app/src/main/webui/src/projects/ProjectsPage.tsx
+++ b/karavan-app/src/main/webui/src/projects/ProjectsPage.tsx
@@ -46,6 +46,7 @@ import {Project, ProjectType} from "../api/ProjectModels";
 import {shallow} from "zustand/shallow";
 import {KaravanApi} from "../api/KaravanApi";
 import {ProjectsToolbar} from "./ProjectsToolbar";
+import {ProjectService} from "../api/ProjectService";
 
 interface Props {
     tools?: React.ReactNode
@@ -62,9 +63,12 @@ export function ProjectsPage (props: Props) {
             setProjects(projects);
             setFilter('');
         });
+        const interval = setInterval(() => {
+            ProjectService.refreshAllContainerStatuses();
+        }, 2000)
+        return () => clearInterval(interval);
     }, []);
 
-
     function title() {
         return <TextContent>
             <Text component="h2">Projects</Text>
diff --git a/karavan-app/src/main/webui/src/util/CodeUtils.ts 
b/karavan-app/src/main/webui/src/util/CodeUtils.ts
index 33f5a68e..a54d766c 100644
--- a/karavan-app/src/main/webui/src/util/CodeUtils.ts
+++ b/karavan-app/src/main/webui/src/util/CodeUtils.ts
@@ -51,9 +51,9 @@ export class CodeUtils {
             return 
CamelDefinitionYaml.integrationToYaml(Integration.createNew(fileName, 'plain'));
         } else if (type === 'KAMELET') {
             const filenameParts = fileName.replace('.kamelet.yaml', 
'').split('-');
+            const name = filenameParts.join('-');
             const type: string | undefined = filenameParts.slice(-1)[0]
             const kameletType: KameletTypes | undefined = (type === "sink" || 
type === "source" || type === "action") ? type : undefined;
-            const name = filenameParts.slice(0, -1).join('-');
             const integration = Integration.createNew(name, 'kamelet');
             const meta: MetadataLabels = new 
MetadataLabels({"camel.apache.org/kamelet.type": kameletType});
             integration.metadata.labels = meta;

Reply via email to