You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by lb...@apache.org on 2020/03/12 14:36:49 UTC
[camel-k-runtime] branch master updated: Knative extension not
listed among knative dependencies in quarkus catalog #260
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 <lb...@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")