This is an automated email from the ASF dual-hosted git repository. lburgazzoli pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/camel-k-runtime.git
The following commit(s) were added to refs/heads/master by this push: new 6e13473 Knative extension not listed among knative dependencies in quarkus catalog #260 6e13473 is described below commit 6e13473c95d87e7bda34e1d08cf5661a9be68132 Author: lburgazzoli <lburgazz...@gmail.com> AuthorDate: Thu Mar 12 14:37:09 2020 +0100 Knative extension not listed among knative dependencies in quarkus catalog #260 --- .../camel-k-quarkus-knative/runtime/pom.xml | 10 ++++++++- .../src/it/generate-catalog-main/verify.groovy | 8 +++++++ .../src/it/generate-catalog-quarkus/verify.groovy | 6 ++++++ .../camel/k/tooling/maven/model/CamelArtifact.java | 7 ++++++ .../maven/processors/CatalogProcessor3x.java | 25 ++++++++++++++++------ .../maven/processors/CatalogProcessor3Test.java | 4 +--- 6 files changed, 50 insertions(+), 10 deletions(-) diff --git a/camel-k-quarkus/camel-k-quarkus-knative/runtime/pom.xml b/camel-k-quarkus/camel-k-quarkus-knative/runtime/pom.xml index 53dc33e..522905c 100644 --- a/camel-k-quarkus/camel-k-quarkus-knative/runtime/pom.xml +++ b/camel-k-quarkus/camel-k-quarkus-knative/runtime/pom.xml @@ -42,7 +42,15 @@ </dependency> <dependency> <groupId>org.apache.camel.k</groupId> - <artifactId>camel-k-runtime-knative</artifactId> + <artifactId>camel-knative-api</artifactId> + </dependency> + <dependency> + <groupId>org.apache.camel.k</groupId> + <artifactId>camel-knative</artifactId> + </dependency> + <dependency> + <groupId>org.apache.camel.k</groupId> + <artifactId>camel-knative-http</artifactId> </dependency> <dependency> <groupId>org.apache.camel</groupId> diff --git a/tooling/camel-k-maven-plugin/src/it/generate-catalog-main/verify.groovy b/tooling/camel-k-maven-plugin/src/it/generate-catalog-main/verify.groovy index 99fdadd..bd8666d 100644 --- a/tooling/camel-k-maven-plugin/src/it/generate-catalog-main/verify.groovy +++ b/tooling/camel-k-maven-plugin/src/it/generate-catalog-main/verify.groovy @@ -30,3 +30,11 @@ assert catalog.spec.runtime.capabilities['rest'].dependencies[1].groupId == 'org assert catalog.spec.runtime.capabilities['rest'].dependencies[1].artifactId == 'camel-undertow' assert catalog.metadata.labels['camel.apache.org/runtime.version'] == runtimeVersion + +assert catalog.spec.artifacts['camel-knative'].dependencies.size == 3 +assert catalog.spec.artifacts['camel-knative'].dependencies.find { it.groupId == 'org.apache.camel.k' && it.artifactId == 'camel-knative-api'} +assert catalog.spec.artifacts['camel-knative'].dependencies.find { it.groupId == 'org.apache.camel.k' && it.artifactId == 'camel-knative'} +assert catalog.spec.artifacts['camel-knative'].dependencies.find { it.groupId == 'org.apache.camel.k' && it.artifactId == 'camel-knative-http'} + +assert catalog.spec.artifacts['camel-knative'].schemes.size == 1 +assert catalog.spec.artifacts['camel-knative'].schemes[0].id == 'knative' diff --git a/tooling/camel-k-maven-plugin/src/it/generate-catalog-quarkus/verify.groovy b/tooling/camel-k-maven-plugin/src/it/generate-catalog-quarkus/verify.groovy index 8c0df4c..3f9680b 100644 --- a/tooling/camel-k-maven-plugin/src/it/generate-catalog-quarkus/verify.groovy +++ b/tooling/camel-k-maven-plugin/src/it/generate-catalog-quarkus/verify.groovy @@ -30,3 +30,9 @@ assert catalog.spec.runtime.capabilities['rest'].dependencies[1].groupId == 'org assert catalog.spec.runtime.capabilities['rest'].dependencies[1].artifactId == 'camel-quarkus-platform-http' assert catalog.metadata.labels['camel.apache.org/runtime.version'] == runtimeVersion + +assert catalog.spec.artifacts['camel-knative'].dependencies.size == 1 +assert catalog.spec.artifacts['camel-knative'].dependencies[0].groupId == 'org.apache.camel.k' +assert catalog.spec.artifacts['camel-knative'].dependencies[0].artifactId == 'camel-k-quarkus-knative' +assert catalog.spec.artifacts['camel-knative'].schemes.size == 1 +assert catalog.spec.artifacts['camel-knative'].schemes[0].id == 'knative' diff --git a/tooling/camel-k-maven-plugin/src/main/java/org/apache/camel/k/tooling/maven/model/CamelArtifact.java b/tooling/camel-k-maven-plugin/src/main/java/org/apache/camel/k/tooling/maven/model/CamelArtifact.java index d031919..8b60ab6 100644 --- a/tooling/camel-k-maven-plugin/src/main/java/org/apache/camel/k/tooling/maven/model/CamelArtifact.java +++ b/tooling/camel-k-maven-plugin/src/main/java/org/apache/camel/k/tooling/maven/model/CamelArtifact.java @@ -18,6 +18,7 @@ package org.apache.camel.k.tooling.maven.model; import java.util.Collections; import java.util.Set; +import java.util.function.BooleanSupplier; import com.fasterxml.jackson.annotation.JsonPropertyOrder; import com.fasterxml.jackson.databind.annotation.JsonDeserialize; @@ -65,5 +66,11 @@ public interface CamelArtifact extends Artifact { } class Builder extends ImmutableCamelArtifact.Builder { + public Builder addDependencies(BooleanSupplier condition, Artifact... artifacts) { + if (condition.getAsBoolean()) { + addDependencies(artifacts); + } + return this; + } } } diff --git a/tooling/camel-k-maven-plugin/src/main/java/org/apache/camel/k/tooling/maven/processors/CatalogProcessor3x.java b/tooling/camel-k-maven-plugin/src/main/java/org/apache/camel/k/tooling/maven/processors/CatalogProcessor3x.java index c0fc4b8..e235443 100644 --- a/tooling/camel-k-maven-plugin/src/main/java/org/apache/camel/k/tooling/maven/processors/CatalogProcessor3x.java +++ b/tooling/camel-k-maven-plugin/src/main/java/org/apache/camel/k/tooling/maven/processors/CatalogProcessor3x.java @@ -24,6 +24,7 @@ import java.util.Objects; import com.vdurmont.semver4j.Semver; import org.apache.camel.catalog.CamelCatalog; +import org.apache.camel.catalog.DefaultRuntimeProvider; import org.apache.camel.catalog.quarkus.QuarkusRuntimeProvider; import org.apache.camel.k.tooling.maven.model.CamelArtifact; import org.apache.camel.k.tooling.maven.model.CamelLoader; @@ -151,10 +152,16 @@ public class CatalogProcessor3x implements CatalogProcessor { new CamelArtifact.Builder() .groupId("org.apache.camel.k") .artifactId("camel-k-runtime-knative") - .addDependencies(MavenArtifact.from("org.apache.camel.k", "camel-k-loader-yaml")) - .addDependencies(MavenArtifact.from("org.apache.camel.k", "camel-knative-api")) - .addDependencies(MavenArtifact.from("org.apache.camel.k", "camel-knative")) - .addDependencies(MavenArtifact.from("org.apache.camel.k", "camel-knative-http")) + .addDependencies( + () -> catalog.getRuntimeProvider() instanceof DefaultRuntimeProvider, + MavenArtifact.from("org.apache.camel.k", "camel-k-loader-yaml"), + MavenArtifact.from("org.apache.camel.k", "camel-knative-api"), + MavenArtifact.from("org.apache.camel.k", "camel-knative"), + MavenArtifact.from("org.apache.camel.k", "camel-knative-http")) + .addDependencies( + () -> catalog.getRuntimeProvider() instanceof QuarkusRuntimeProvider, + MavenArtifact.from("org.apache.camel.k", "camel-k-quarkus-knative"), + MavenArtifact.from("org.apache.camel.k", "camel-k-quarkus-loader-yaml")) .build() ); @@ -166,8 +173,14 @@ public class CatalogProcessor3x implements CatalogProcessor { .id("knative") .http(true) .build()) - .addDependencies(MavenArtifact.from("org.apache.camel.k", "camel-knative-api")) - .addDependencies(MavenArtifact.from("org.apache.camel.k", "camel-knative-http")) + .addDependencies( + () -> catalog.getRuntimeProvider() instanceof DefaultRuntimeProvider, + MavenArtifact.from("org.apache.camel.k", "camel-knative-api"), + MavenArtifact.from("org.apache.camel.k", "camel-knative"), + MavenArtifact.from("org.apache.camel.k", "camel-knative-http")) + .addDependencies( + () -> catalog.getRuntimeProvider() instanceof QuarkusRuntimeProvider, + MavenArtifact.from("org.apache.camel.k", "camel-k-quarkus-knative")) .build() ); } diff --git a/tooling/camel-k-maven-plugin/src/test/java/org/apache/camel/k/tooling/maven/processors/CatalogProcessor3Test.java b/tooling/camel-k-maven-plugin/src/test/java/org/apache/camel/k/tooling/maven/processors/CatalogProcessor3Test.java index 82e99a5..9a953bc 100644 --- a/tooling/camel-k-maven-plugin/src/test/java/org/apache/camel/k/tooling/maven/processors/CatalogProcessor3Test.java +++ b/tooling/camel-k-maven-plugin/src/test/java/org/apache/camel/k/tooling/maven/processors/CatalogProcessor3Test.java @@ -53,8 +53,6 @@ public class CatalogProcessor3Test extends AbstractCatalogProcessorTest { @Test public void testAcceptEqualToHigher() { - CatalogProcessor3x cp3 = new CatalogProcessor3x(); - CamelCatalog catalog = versionCamelCatalog("4.0.0"); assertThat(new CatalogProcessor3x().accepts(catalog)).isFalse(); @@ -87,7 +85,7 @@ public class CatalogProcessor3Test extends AbstractCatalogProcessorTest { assertThat(artifactMap.get("camel-k-runtime-knative")).satisfies(a -> { assertThat(a.getDependencies()).anyMatch( - d -> d.getGroupId().equals("org.apache.camel.k") && d.getArtifactId().equals("camel-knative") + d -> d.getGroupId().equals("org.apache.camel.k") && d.getArtifactId().equals("camel-knative-api") ); assertThat(a.getDependencies()).anyMatch( d -> d.getGroupId().equals("org.apache.camel.k") && d.getArtifactId().equals("camel-knative")