You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by ma...@apache.org on 2023/11/28 22:54:37 UTC
(camel-karavan) 01/02: Fix #1005
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
commit 0d521f4518123ed842dcde32bb603e6f8c5f0c8b
Author: Marat Gubaidullin <ma...@talismancloud.io>
AuthorDate: Tue Nov 28 17:54:07 2023 -0500
Fix #1005
---
.../src/designer/route/property/InfrastructureSelector.tsx | 11 ++++++-----
.../apache/camel/karavan/api/InfrastructureResource.java | 9 +++++----
.../src/designer/route/property/InfrastructureSelector.tsx | 11 ++++++-----
.../src/main/webui/src/project/DevModeToolbar.tsx | 13 ++++++++-----
4 files changed, 25 insertions(+), 19 deletions(-)
diff --git a/karavan-designer/src/designer/route/property/InfrastructureSelector.tsx b/karavan-designer/src/designer/route/property/InfrastructureSelector.tsx
index 38555892..e849b94d 100644
--- a/karavan-designer/src/designer/route/property/InfrastructureSelector.tsx
+++ b/karavan-designer/src/designer/route/property/InfrastructureSelector.tsx
@@ -34,7 +34,8 @@ interface Props {
export function InfrastructureSelector(props: Props) {
- const [tabIndex, setTabIndex] = useState<string | number>("configMap");
+ const tabs = InfrastructureAPI.infrastructure === 'kubernetes' ? ['configMap', 'secret', 'services'] : ['services'];
+ const [tabIndex, setTabIndex] = useState<string | number>(tabs[0]);
const [filter, setFilter] = useState<string>();
function checkFilter (name: string): boolean {
@@ -49,9 +50,9 @@ export function InfrastructureSelector(props: Props) {
return (
<Form isHorizontal className="search" autoComplete="off">
<FormGroup fieldId="search">
- <TextInput className="text-field" type="text" id="search" name="search"
- value={filter}
- onChange={(_, value) => setFilter(value)}/>
+ <TextInput className="text-field" type="text" id="search" name="search"
+ value={filter}
+ onChange={(_, value) => setFilter(value)}/>
</FormGroup>
</Form>
)
@@ -190,7 +191,7 @@ export function InfrastructureSelector(props: Props) {
)
}
- const tabs = InfrastructureAPI.infrastructure === 'kubernetes' ? ['configMap', 'secret', 'services'] : ['services'];
+
return (
<Modal
aria-label="Select from Infrastructure"
diff --git a/karavan-web/karavan-app/src/main/java/org/apache/camel/karavan/api/InfrastructureResource.java b/karavan-web/karavan-app/src/main/java/org/apache/camel/karavan/api/InfrastructureResource.java
index 8b62d4c0..1385c384 100644
--- a/karavan-web/karavan-app/src/main/java/org/apache/camel/karavan/api/InfrastructureResource.java
+++ b/karavan-web/karavan-app/src/main/java/org/apache/camel/karavan/api/InfrastructureResource.java
@@ -64,9 +64,9 @@ public class InfrastructureResource {
@Path("/deployment/{env}")
public List<DeploymentStatus> getDeploymentStatusesByEnv(@PathParam("env") String env) throws Exception {
if (infinispanService.isReady()) {
- return infinispanService.getDeploymentStatuses(env).stream()
- .sorted(Comparator.comparing(DeploymentStatus::getProjectId))
- .collect(Collectors.toList());
+ return infinispanService.getDeploymentStatuses(env).stream()
+ .sorted(Comparator.comparing(DeploymentStatus::getProjectId))
+ .collect(Collectors.toList());
} else {
return List.of();
}
@@ -140,7 +140,8 @@ public class InfrastructureResource {
return Response.ok(kubernetesService.getServices(kubernetesService.getNamespace())).build();
} else {
List<String> list = infinispanService.getContainerStatuses(environment).stream()
- .map(ci -> ci.getPorts().stream().map(i -> ci.getContainerName() + ":" + i).collect(Collectors.toList()))
+ .filter(ci -> !ci.getPorts().isEmpty())
+ .map(ci -> ci.getPorts().stream().map(i -> ci.getContainerName() + "|" + ci.getContainerName() + ":" + i.getPrivatePort()).collect(Collectors.toList()))
.flatMap(List::stream).collect(Collectors.toList());
return Response.ok(list).build();
}
diff --git a/karavan-web/karavan-app/src/main/webui/src/designer/route/property/InfrastructureSelector.tsx b/karavan-web/karavan-app/src/main/webui/src/designer/route/property/InfrastructureSelector.tsx
index 38555892..e849b94d 100644
--- a/karavan-web/karavan-app/src/main/webui/src/designer/route/property/InfrastructureSelector.tsx
+++ b/karavan-web/karavan-app/src/main/webui/src/designer/route/property/InfrastructureSelector.tsx
@@ -34,7 +34,8 @@ interface Props {
export function InfrastructureSelector(props: Props) {
- const [tabIndex, setTabIndex] = useState<string | number>("configMap");
+ const tabs = InfrastructureAPI.infrastructure === 'kubernetes' ? ['configMap', 'secret', 'services'] : ['services'];
+ const [tabIndex, setTabIndex] = useState<string | number>(tabs[0]);
const [filter, setFilter] = useState<string>();
function checkFilter (name: string): boolean {
@@ -49,9 +50,9 @@ export function InfrastructureSelector(props: Props) {
return (
<Form isHorizontal className="search" autoComplete="off">
<FormGroup fieldId="search">
- <TextInput className="text-field" type="text" id="search" name="search"
- value={filter}
- onChange={(_, value) => setFilter(value)}/>
+ <TextInput className="text-field" type="text" id="search" name="search"
+ value={filter}
+ onChange={(_, value) => setFilter(value)}/>
</FormGroup>
</Form>
)
@@ -190,7 +191,7 @@ export function InfrastructureSelector(props: Props) {
)
}
- const tabs = InfrastructureAPI.infrastructure === 'kubernetes' ? ['configMap', 'secret', 'services'] : ['services'];
+
return (
<Modal
aria-label="Select from Infrastructure"
diff --git a/karavan-web/karavan-app/src/main/webui/src/project/DevModeToolbar.tsx b/karavan-web/karavan-app/src/main/webui/src/project/DevModeToolbar.tsx
index f9056c14..bcb46dc4 100644
--- a/karavan-web/karavan-app/src/main/webui/src/project/DevModeToolbar.tsx
+++ b/karavan-web/karavan-app/src/main/webui/src/project/DevModeToolbar.tsx
@@ -81,10 +81,10 @@ export function DevModeToolbar(props: Props) {
<FlexItem className="refresher">
{poll && <Spinner className="spinner" size="lg" aria-label="Refresh"/>}
<Tooltip content={poll ? "Stop refresh" : "Refresh auto"} position={TooltipPosition.bottom}>
- <Button className="button"
- icon={poll ? <StopIcon/> : <RefreshIcon/>}
- variant={"link"}
- onClick={e => setPoll(!poll)}/>
+ <Button className="button"
+ icon={poll ? <StopIcon/> : <RefreshIcon/>}
+ variant={"link"}
+ onClick={e => setPoll(!poll)}/>
</Tooltip>
</FlexItem>
{/*Replace with something else because Spinner is used fo refresh*/}
@@ -145,7 +145,10 @@ export function DevModeToolbar(props: Props) {
isDisabled={!commands.includes('delete') || inTransit}
variant={"control"}
icon={<DeleteIcon/>}
- onClick={() => ProjectService.deleteDevModeContainer(project)}>
+ onClick={() => {
+ setPoll(true);
+ ProjectService.deleteDevModeContainer(project);
+ }}>
</Button>
</Tooltip>
</FlexItem>}