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 2022/10/28 17:02:34 UTC
[camel-karavan] 02/03: Cleanup
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 b9334833a8597bba532ca3b7ce8cfe5b9f60959e
Author: Marat Gubaidullin <ma...@gmail.com>
AuthorDate: Fri Oct 28 13:02:07 2022 -0400
Cleanup
---
.../camel/karavan/api/KubernetesResource.java | 10 +-------
.../camel/karavan/service/KubernetesService.java | 11 +++++---
.../src/main/resources/application.properties | 2 +-
.../main/webapp/src/dashboard/DashboardPage.tsx | 30 +++++++++++++---------
.../apache/camel/karavan/operator/Constants.java | 5 ++--
.../operator/resource/KaravanDeployment.java | 3 +++
.../operator/resource/KaravanTektonPipeline.java | 10 ++++----
.../operator/resource/KaravanTektonTask.java | 6 ++---
8 files changed, 40 insertions(+), 37 deletions(-)
diff --git a/karavan-app/src/main/java/org/apache/camel/karavan/api/KubernetesResource.java b/karavan-app/src/main/java/org/apache/camel/karavan/api/KubernetesResource.java
index d1553cb..194c3c3 100644
--- a/karavan-app/src/main/java/org/apache/camel/karavan/api/KubernetesResource.java
+++ b/karavan-app/src/main/java/org/apache/camel/karavan/api/KubernetesResource.java
@@ -57,9 +57,6 @@ public class KubernetesResource {
@ConfigProperty(name = "karavan.environment")
String environment;
- @ConfigProperty(name = "karavan.pipeline")
- String pipeline;
-
private static final Logger LOGGER = Logger.getLogger(KubernetesResource.class.getName());
@@ -69,9 +66,7 @@ public class KubernetesResource {
@Path("/pipeline/{env}")
public Project createPipeline(@PathParam("env") String env, Project project) throws Exception {
Project p = infinispanService.getProject(project.getProjectId());
- kubernetesService.createPipelineRun(project, pipeline, kubernetesService.getNamespace());
-// p.setDeployed(true); // TODO: Replace this update by updating from Pipeline
-// infinispanService.saveProject(p); // TODO: Replace this update by updating from Pipeline
+ kubernetesService.createPipelineRun(project);
return p;
}
@@ -132,9 +127,6 @@ public class KubernetesResource {
@Path("/deployment/{env}/{name}")
public Response deleteDeployment(@PathParam("env") String env, @PathParam("name") String name) throws Exception {
kubernetesService.deleteDeployment(name, kubernetesService.getNamespace());
-// Project p = infinispanService.getProject(name); // TODO: p.setDeployed(false) than karavan keeps pod/camel statuses up forever
-// p.setDeployed(false);
-// infinispanService.saveProject(p);
return Response.ok().build();
}
diff --git a/karavan-app/src/main/java/org/apache/camel/karavan/service/KubernetesService.java b/karavan-app/src/main/java/org/apache/camel/karavan/service/KubernetesService.java
index c6fdea4..fa3f29b 100644
--- a/karavan-app/src/main/java/org/apache/camel/karavan/service/KubernetesService.java
+++ b/karavan-app/src/main/java/org/apache/camel/karavan/service/KubernetesService.java
@@ -93,6 +93,9 @@ public class KubernetesService {
public
String environment;
+ @ConfigProperty(name = "karavan.pipeline")
+ String pipeline;
+
List<SharedIndexInformer> informers = new ArrayList<>(3);
@ConsumeEvent(value = START_INFORMERS, blocking = true)
@@ -129,19 +132,19 @@ public class KubernetesService {
informers.forEach(informer -> informer.close());
}
- public String createPipelineRun(Project project, String pipelineName, String namespace) throws Exception {
- LOGGER.info("Pipeline is creating for " + project.getProjectId());
+ public String createPipelineRun(Project project) throws Exception {
+ LOGGER.info("Pipeline " + pipeline + " is creating for " + project.getProjectId());
Map<String, String> labels = Map.of(
"karavan-project-id", project.getProjectId(),
- "tekton.dev/pipeline", pipelineName,
+ "tekton.dev/pipeline", pipeline,
getRuntimeLabel(), "camel"
);
ObjectMeta meta = new ObjectMetaBuilder()
.withGenerateName("karavan-" + project.getProjectId() + "-")
.withLabels(labels)
- .withNamespace(namespace)
+ .withNamespace(getNamespace())
.build();
PipelineRef ref = new PipelineRefBuilder().withName("karavan-pipeline-build-quarkus").build();
diff --git a/karavan-app/src/main/resources/application.properties b/karavan-app/src/main/resources/application.properties
index d13b127..3bae5dc 100644
--- a/karavan-app/src/main/resources/application.properties
+++ b/karavan-app/src/main/resources/application.properties
@@ -1,6 +1,6 @@
karavan.version=3.18.5
karavan.environment=dev
-karavan.pipeline=karavan-pipeline-build-quarkus
+karavan.pipeline=karavan-pipeline-dev-quarkus
karavan.camel-status-threshold=2000
# Git repository Configuration
diff --git a/karavan-app/src/main/webapp/src/dashboard/DashboardPage.tsx b/karavan-app/src/main/webapp/src/dashboard/DashboardPage.tsx
index d893bf7..3488bec 100644
--- a/karavan-app/src/main/webapp/src/dashboard/DashboardPage.tsx
+++ b/karavan-app/src/main/webapp/src/dashboard/DashboardPage.tsx
@@ -4,10 +4,6 @@ import {
Button,
Flex,
FlexItem, HelperText, HelperTextItem, Label, LabelGroup,
- OverflowMenu,
- OverflowMenuContent,
- OverflowMenuGroup,
- OverflowMenuItem,
PageSection,
Text,
TextContent,
@@ -26,6 +22,7 @@ import {KaravanApi} from "../api/KaravanApi";
import Icon from "../Logo";
import UpIcon from "@patternfly/react-icons/dist/esm/icons/check-circle-icon";
import DownIcon from "@patternfly/react-icons/dist/esm/icons/error-circle-o-icon";
+import QuestionIcon from "@patternfly/react-icons/dist/esm/icons/outlined-question-circle-icon";
interface Props {
config: any,
@@ -169,7 +166,11 @@ export class DashboardPage extends React.Component<Props, State> {
</Flex>
)
} else {
- return (<Label icon={<DownIcon/>} color={"grey"}>n/a</Label>);
+ return (
+ <Tooltip content={"No information"} position={"right"}>
+ <Label color={"grey"}>???</Label>
+ </Tooltip>
+ );
}
}
@@ -207,7 +208,7 @@ export class DashboardPage extends React.Component<Props, State> {
<Td style={{verticalAlign:"middle"}}>
<HelperText>
<HelperTextItem>{this.getProject(deployment)?.name || ""}</HelperTextItem>
- <HelperTextItem>{this.getProject(deployment)?.description || ""}</HelperTextItem>
+ <HelperTextItem>{this.getProject(deployment)?.description || "Camel project"}</HelperTextItem>
</HelperText>
</Td>
<Td >
@@ -222,7 +223,9 @@ export class DashboardPage extends React.Component<Props, State> {
<Flex direction={{default: "column"}}>
{this.getDeploymentByEnvironments(deployment).map(value => (
<FlexItem className="badge-flex-item" key={value[0]}>
- <Label variant={"outline"}>{value[1]?.namespace || "n/a"}</Label>
+ <Label variant={"outline"}>
+ {value[1]?.namespace || "???"}
+ </Label>
</FlexItem>
))}
</Flex>
@@ -238,7 +241,9 @@ export class DashboardPage extends React.Component<Props, State> {
<Flex direction={{default: "column"}}>
{this.getServiceByEnvironments(deployment).map(value => (
<FlexItem className="badge-flex-item" key={value[0]}>
- <Label variant={"outline"}>{value[1] ? (value[1]?.port + " -> " + value[1]?.targetPort) : "n/a"}</Label>
+ <Label variant={"outline"}>
+ {value[1] ? (value[1]?.port + " -> " + value[1]?.targetPort) : "???"}
+ </Label>
</FlexItem>
))}
</Flex>
@@ -248,10 +253,11 @@ export class DashboardPage extends React.Component<Props, State> {
{this.getServiceByEnvironments(deployment).map(value => (
<FlexItem key={value[0]}>
<LabelGroup numLabels={4} className="camel-label-group">
- <Label className="table-label" icon={false ? <UpIcon/> : <DownIcon/>}>{"Context"}</Label>
- <Label className="table-label" icon={false ? <UpIcon/> : <DownIcon/>}>{"Consumer"}</Label>
- <Label className="table-label" icon={false ? <UpIcon/> : <DownIcon/>}>{"Routes"}</Label>
- <Label className="table-label" icon={false ? <UpIcon/> : <DownIcon/>}>{"Registry"}</Label>
+ <Label color={false ? "green" : "red"}
+ className="table-label"
+ icon={false ? <UpIcon/> : <DownIcon/>}>
+ {"Context"}
+ </Label>
</LabelGroup>
</FlexItem>
))}
diff --git a/karavan-operator/src/main/java/org/apache/camel/karavan/operator/Constants.java b/karavan-operator/src/main/java/org/apache/camel/karavan/operator/Constants.java
index 9499881..ba78eb4 100644
--- a/karavan-operator/src/main/java/org/apache/camel/karavan/operator/Constants.java
+++ b/karavan-operator/src/main/java/org/apache/camel/karavan/operator/Constants.java
@@ -31,9 +31,8 @@ public final class Constants {
public static final String PVC_M2_CACHE = "karavan-m2-cache";
public static final String PVC_JBANG_CACHE = "karavan-jbang-cache";
- public static final String PIPELINE_BUILD_QUARKUS = "karavan-pipeline-build-quarkus";
- public static final String TASK_BUILD_QUARKUS = "karavan-task-build-quarkus";
-
+ public static final String PIPELINE_DEV_QUARKUS = "karavan-pipeline-dev-quarkus";
+ public static final String TASK_DEV_QUARKUS = "karavan-task-dev-quarkus";
public static final String ROLE_PIPELINE_DEPLOYER = "deployer";
public static final String SERVICEACCOUNT_PIPELINE = "pipeline";
diff --git a/karavan-operator/src/main/java/org/apache/camel/karavan/operator/resource/KaravanDeployment.java b/karavan-operator/src/main/java/org/apache/camel/karavan/operator/resource/KaravanDeployment.java
index a4d6258..7e72080 100644
--- a/karavan-operator/src/main/java/org/apache/camel/karavan/operator/resource/KaravanDeployment.java
+++ b/karavan-operator/src/main/java/org/apache/camel/karavan/operator/resource/KaravanDeployment.java
@@ -62,6 +62,9 @@ public class KaravanDeployment extends CRUDKubernetesDependentResource<Deploymen
String image = baseImage + ":" + version;
List<EnvVar> envVarList = new ArrayList<>();
+ envVarList.add(
+ new EnvVar("KARAVAN_ENVIRONMENT", karavan.getSpec().getType(), null)
+ );
envVarList.add(
new EnvVar("KUBERNETES_NAMESPACE", null, new EnvVarSourceBuilder().withFieldRef(new ObjectFieldSelector("","metadata.namespace")).build())
);
diff --git a/karavan-operator/src/main/java/org/apache/camel/karavan/operator/resource/KaravanTektonPipeline.java b/karavan-operator/src/main/java/org/apache/camel/karavan/operator/resource/KaravanTektonPipeline.java
index 5049fe1..df0e46c 100644
--- a/karavan-operator/src/main/java/org/apache/camel/karavan/operator/resource/KaravanTektonPipeline.java
+++ b/karavan-operator/src/main/java/org/apache/camel/karavan/operator/resource/KaravanTektonPipeline.java
@@ -46,16 +46,16 @@ public class KaravanTektonPipeline extends CRUDKubernetesDependentResource<Pipel
public Pipeline desired(Karavan karavan, Context<Karavan> context) {
return new PipelineBuilder()
.withNewMetadata()
- .withName(Constants.PIPELINE_BUILD_QUARKUS)
+ .withName(Constants.PIPELINE_DEV_QUARKUS)
.withNamespace(karavan.getMetadata().getNamespace())
- .withLabels(Utils.getLabels(Constants.PIPELINE_BUILD_QUARKUS, Map.of()))
+ .withLabels(Utils.getLabels(Constants.PIPELINE_DEV_QUARKUS, Map.of()))
.endMetadata()
.withNewSpec()
.withParams(new ParamSpecBuilder().withName("PROJECT_ID").withType("string").withDescription("ProjectId").build())
.withTasks(
- new PipelineTaskBuilder().withName(Constants.TASK_BUILD_QUARKUS)
+ new PipelineTaskBuilder().withName(Constants.TASK_DEV_QUARKUS)
.withParams(new ParamBuilder().withName("project").withNewValue("$(params.PROJECT_ID)").build())
- .withTaskRef(new TaskRefBuilder().withKind("Task").withName(Constants.TASK_BUILD_QUARKUS).build())
+ .withTaskRef(new TaskRefBuilder().withKind("Task").withName(Constants.TASK_DEV_QUARKUS).build())
.withWorkspaces(
new WorkspacePipelineTaskBinding(Constants.PVC_M2_CACHE, "", Constants.PVC_M2_CACHE),
new WorkspacePipelineTaskBinding(Constants.PVC_JBANG_CACHE, "", Constants.PVC_JBANG_CACHE)
@@ -72,7 +72,7 @@ public class KaravanTektonPipeline extends CRUDKubernetesDependentResource<Pipel
@Override
public ReconcileResult<Pipeline> reconcile(Karavan karavan, Context<Karavan> context) {
- Pipeline pipeline = new DefaultTektonClient(getKubernetesClient()).v1beta1().pipelines().inNamespace(karavan.getMetadata().getNamespace()).withName(Constants.PIPELINE_BUILD_QUARKUS).get();
+ Pipeline pipeline = new DefaultTektonClient(getKubernetesClient()).v1beta1().pipelines().inNamespace(karavan.getMetadata().getNamespace()).withName(Constants.PIPELINE_DEV_QUARKUS).get();
if (pipeline == null) {
var desired = desired(karavan, context);
var createdResource = handleCreate(desired, karavan, context);
diff --git a/karavan-operator/src/main/java/org/apache/camel/karavan/operator/resource/KaravanTektonTask.java b/karavan-operator/src/main/java/org/apache/camel/karavan/operator/resource/KaravanTektonTask.java
index b1eb239..963762d 100644
--- a/karavan-operator/src/main/java/org/apache/camel/karavan/operator/resource/KaravanTektonTask.java
+++ b/karavan-operator/src/main/java/org/apache/camel/karavan/operator/resource/KaravanTektonTask.java
@@ -61,9 +61,9 @@ public class KaravanTektonTask extends CRUDKubernetesDependentResource<Task, Kar
return new TaskBuilder()
.withNewMetadata()
- .withName(Constants.TASK_BUILD_QUARKUS)
+ .withName(Constants.TASK_DEV_QUARKUS)
.withNamespace(karavan.getMetadata().getNamespace())
- .withLabels(Utils.getLabels(Constants.TASK_BUILD_QUARKUS, Map.of()))
+ .withLabels(Utils.getLabels(Constants.TASK_DEV_QUARKUS, Map.of()))
.endMetadata()
.withNewSpec()
.withParams(new ParamSpecBuilder().withName("project").withType("string").withDescription("ProjectId").build())
@@ -103,7 +103,7 @@ public class KaravanTektonTask extends CRUDKubernetesDependentResource<Task, Kar
@Override
public ReconcileResult<Task> reconcile(Karavan karavan, Context<Karavan> context) {
- Task task = new DefaultTektonClient(getKubernetesClient()).v1beta1().tasks().inNamespace(karavan.getMetadata().getNamespace()).withName(Constants.TASK_BUILD_QUARKUS).get();
+ Task task = new DefaultTektonClient(getKubernetesClient()).v1beta1().tasks().inNamespace(karavan.getMetadata().getNamespace()).withName(Constants.TASK_DEV_QUARKUS).get();
if (task == null) {
var desired = desired(karavan, context);
var createdResource = handleCreate(desired, karavan, context);