This is an automated email from the ASF dual-hosted git repository. acosentino pushed a commit to branch crds in repository https://gitbox.apache.org/repos/asf/camel-kamelets.git
commit e38b0ea05b10cc30a5f3459c8c284860c0c097a4 Author: Andrea Cosentino <[email protected]> AuthorDate: Thu Jul 13 11:17:16 2023 +0200 Switch from Fabric8 Camel K Extension to Camel K CRDS Signed-off-by: Andrea Cosentino <[email protected]> --- library/camel-kamelets-catalog/pom.xml | 6 +++--- .../org/apache/camel/kamelets/catalog/KameletsCatalog.java | 9 +++++---- .../apache/camel/kamelets/catalog/KameletsCatalogTest.java | 13 +++++++------ .../camel/kamelets/maven/plugin/ValidateKameletsMojo.java | 12 ++++++++++-- pom.xml | 2 +- 5 files changed, 26 insertions(+), 16 deletions(-) diff --git a/library/camel-kamelets-catalog/pom.xml b/library/camel-kamelets-catalog/pom.xml index ea227540..99d2c4d3 100644 --- a/library/camel-kamelets-catalog/pom.xml +++ b/library/camel-kamelets-catalog/pom.xml @@ -64,9 +64,9 @@ <version>${jackson2-version}</version> </dependency> <dependency> - <groupId>io.fabric8</groupId> - <artifactId>camel-k-model-v1alpha1</artifactId> - <version>${camel.k.extension.version}</version> + <groupId>org.apache.camel.k</groupId> + <artifactId>camel-k-crds</artifactId> + <version>${camel.k.crds.version}</version> </dependency> <dependency> <groupId>com.fasterxml.jackson.datatype</groupId> diff --git a/library/camel-kamelets-catalog/src/main/java/org/apache/camel/kamelets/catalog/KameletsCatalog.java b/library/camel-kamelets-catalog/src/main/java/org/apache/camel/kamelets/catalog/KameletsCatalog.java index 014c20a6..0824a5ff 100644 --- a/library/camel-kamelets-catalog/src/main/java/org/apache/camel/kamelets/catalog/KameletsCatalog.java +++ b/library/camel-kamelets-catalog/src/main/java/org/apache/camel/kamelets/catalog/KameletsCatalog.java @@ -30,8 +30,6 @@ import java.util.stream.Collectors; import com.fasterxml.jackson.databind.DeserializationFeature; import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.dataformat.yaml.YAMLFactory; -import io.fabric8.camelk.v1alpha1.Kamelet; -import io.fabric8.camelk.v1alpha1.JSONSchemaProps; import io.github.classgraph.ClassGraph; import io.github.classgraph.Resource; import io.github.classgraph.ScanResult; @@ -42,6 +40,9 @@ import org.apache.camel.kamelets.catalog.model.KameletPrefixSchemeEnum; import org.apache.camel.kamelets.catalog.model.KameletTypeEnum; import org.apache.camel.tooling.model.ComponentModel; import org.apache.camel.util.ObjectHelper; +import org.apache.camel.v1alpha1.Kamelet; +import org.apache.camel.v1alpha1.kameletspec.Definition; +import org.apache.camel.v1alpha1.kameletspec.Template; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -135,7 +136,7 @@ public class KameletsCatalog { return collect; } - public JSONSchemaProps getKameletDefinition(String name) { + public Definition getKameletDefinition(String name) { Kamelet kamelet = kameletModels.get(name); if (kamelet != null) { return kamelet.getSpec().getDefinition(); @@ -188,7 +189,7 @@ public class KameletsCatalog { } } - public Map<String, Object> getKameletTemplate(String name) { + public Template getKameletTemplate(String name) { Kamelet kamelet = kameletModels.get(name); if (kamelet != null) { return kamelet.getSpec().getTemplate(); diff --git a/library/camel-kamelets-catalog/src/test/java/org/apache/camel/kamelets/catalog/KameletsCatalogTest.java b/library/camel-kamelets-catalog/src/test/java/org/apache/camel/kamelets/catalog/KameletsCatalogTest.java index 404a9bfe..eb7e3402 100644 --- a/library/camel-kamelets-catalog/src/test/java/org/apache/camel/kamelets/catalog/KameletsCatalogTest.java +++ b/library/camel-kamelets-catalog/src/test/java/org/apache/camel/kamelets/catalog/KameletsCatalogTest.java @@ -19,12 +19,13 @@ package org.apache.camel.kamelets.catalog; import java.util.List; import java.util.Map; -import io.fabric8.camelk.v1alpha1.JSONSchemaProps; -import io.fabric8.camelk.v1alpha1.Kamelet; + import io.github.classgraph.ClassGraph; -import org.apache.camel.kamelets.catalog.model.KameletPrefixSchemeEnum; import org.apache.camel.kamelets.catalog.model.KameletTypeEnum; import org.apache.camel.tooling.model.ComponentModel; +import org.apache.camel.v1alpha1.Kamelet; +import org.apache.camel.v1alpha1.kameletspec.Definition; +import org.apache.camel.v1alpha1.kameletspec.Template; import org.junit.jupiter.api.BeforeAll; import org.junit.jupiter.api.Test; @@ -52,7 +53,7 @@ public class KameletsCatalogTest { @Test void testGetKameletsDefinition() throws Exception { - JSONSchemaProps props = catalog.getKameletDefinition("aws-sqs-source"); + Definition props = catalog.getKameletDefinition("aws-sqs-source"); assertEquals(14, props.getProperties().keySet().size()); assertTrue(props.getProperties().containsKey("queueNameOrArn")); } @@ -66,7 +67,7 @@ public class KameletsCatalogTest { @Test void testGetKameletsDefinitionNotExists() throws Exception { - JSONSchemaProps props = catalog.getKameletDefinition("word"); + Definition props = catalog.getKameletDefinition("word"); assertNull(props); } @@ -118,7 +119,7 @@ public class KameletsCatalogTest { @Test void testGetKameletsTemplate() throws Exception { - Map<String, Object> template = catalog.getKameletTemplate("aws-sqs-source"); + Template template = catalog.getKameletTemplate("aws-sqs-source"); assertNotNull(template); } diff --git a/library/kamelets-maven-plugin/src/main/java/org/apache/camel/kamelets/maven/plugin/ValidateKameletsMojo.java b/library/kamelets-maven-plugin/src/main/java/org/apache/camel/kamelets/maven/plugin/ValidateKameletsMojo.java index 370df12e..b8a59393 100644 --- a/library/kamelets-maven-plugin/src/main/java/org/apache/camel/kamelets/maven/plugin/ValidateKameletsMojo.java +++ b/library/kamelets-maven-plugin/src/main/java/org/apache/camel/kamelets/maven/plugin/ValidateKameletsMojo.java @@ -22,9 +22,14 @@ import java.util.List; import java.util.Map; import java.util.function.Predicate; import java.util.stream.Collectors; + +import com.fasterxml.jackson.core.JsonProcessingException; +import com.fasterxml.jackson.core.type.TypeReference; +import com.fasterxml.jackson.databind.ObjectMapper; import org.apache.camel.catalog.DefaultCamelCatalog; import org.apache.camel.kamelets.catalog.KameletsCatalog; import org.apache.camel.tooling.model.ComponentModel; +import org.apache.camel.v1alpha1.kameletspec.Template; import org.apache.maven.plugin.AbstractMojo; import org.apache.maven.plugin.MojoExecutionException; import org.apache.maven.plugin.MojoFailureException; @@ -64,9 +69,12 @@ public class ValidateKameletsMojo extends AbstractMojo { KameletsCatalog catalog = new KameletsCatalog(); DefaultCamelCatalog cc = new DefaultCamelCatalog(); List<String> names = catalog.getKameletsName(); + ObjectMapper om = new ObjectMapper(); for (String name: names) { - Map<String, Object> kd = catalog.getKameletTemplate(name); - Map<String,Object> f = (Map) kd.get("from"); + Map<Object, Object> templateJson; + Template kd = catalog.getKameletTemplate(name); + templateJson = om.convertValue(kd, new TypeReference<Map<Object, Object>>(){}); + Map<String,Object> f = (Map) templateJson.get("from"); Map<String,Object> p = (Map) f.get("parameters"); List<String> deps = catalog.getKameletDependencies(name).stream() .filter(Predicate.not(bannedDepsList::contains)) diff --git a/pom.xml b/pom.xml index 2e39f826..f2e0be2f 100644 --- a/pom.xml +++ b/pom.xml @@ -61,7 +61,7 @@ <cyclonedx-maven-plugin-version>2.7.8</cyclonedx-maven-plugin-version> <camel.version>4.0.0-RC1</camel.version> - <camel.k.extension.version>6.1.1</camel.k.extension.version> + <camel.k.crds.version>1.12.1</camel.k.crds.version> <!-- Versions used inside Kamelets (add them also to the dependencyManagement section and the groovy script below) --> <!-- These properties must keep this same format "version.<groupId>.<artifactId>" -->
