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 <marat.gubaidul...@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);