You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by da...@apache.org on 2023/03/22 19:42:33 UTC
[camel] 02/04: CAMEL-19187: camel-jbang - dependency list should use user configured version
This is an automated email from the ASF dual-hosted git repository.
davsclaus pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/camel.git
commit 0f9d78d60f0dcc46af001c2d116bbe65ec6aa40e
Author: Claus Ibsen <cl...@gmail.com>
AuthorDate: Wed Mar 22 20:30:09 2023 +0100
CAMEL-19187: camel-jbang - dependency list should use user configured version
---
.../apache/camel/dsl/jbang/core/commands/DependencyCopy.java | 12 ++++++++++--
.../apache/camel/dsl/jbang/core/commands/DependencyList.java | 8 +++++++-
.../org/apache/camel/dsl/jbang/core/commands/Export.java | 2 ++
.../camel/dsl/jbang/core/commands/ExportBaseCommand.java | 8 +++++++-
.../camel/dsl/jbang/core/commands/ExportCamelMain.java | 6 ++++--
.../java/org/apache/camel/dsl/jbang/core/commands/Run.java | 4 +++-
6 files changed, 33 insertions(+), 7 deletions(-)
diff --git a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/DependencyCopy.java b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/DependencyCopy.java
index bd033fa954f..02cfde7a9b1 100644
--- a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/DependencyCopy.java
+++ b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/DependencyCopy.java
@@ -40,9 +40,13 @@ public class DependencyCopy extends Export {
}
@Override
- protected Integer export() throws Exception {
+ public Integer doCall() throws Exception {
this.quiet = true; // be quiet and generate from fresh data to ensure the output is up-to-date
+ return super.doCall();
+ }
+ @Override
+ protected Integer export() throws Exception {
Integer answer = doExport();
if (answer == 0) {
File buildDir = new File(EXPORT_DIR);
@@ -51,10 +55,13 @@ public class DependencyCopy extends Export {
+ outputDirectory,
null,
buildDir);
- boolean done = p.waitFor(30, TimeUnit.SECONDS);
+ boolean done = p.waitFor(60, TimeUnit.SECONDS);
if (!done) {
answer = 1;
}
+ if (p.exitValue() != 0) {
+ answer = p.exitValue();
+ }
// cleanup dir after complete
FileUtil.removeDir(buildDir);
}
@@ -75,6 +82,7 @@ public class DependencyCopy extends Export {
}
// allow configuring versions from profile
this.javaVersion = prop.getProperty("camel.jbang.javaVersion", this.javaVersion);
+ this.camelVersion = prop.getProperty("camel.jbang.camelVersion", this.camelVersion);
this.kameletsVersion = prop.getProperty("camel.jbang.kameletsVersion", this.kameletsVersion);
this.localKameletDir = prop.getProperty("camel.jbang.localKameletDir", this.localKameletDir);
this.quarkusGroupId = prop.getProperty("camel.jbang.quarkusGroupId", this.quarkusGroupId);
diff --git a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/DependencyList.java b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/DependencyList.java
index 517c692a54a..a8d4512edcd 100644
--- a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/DependencyList.java
+++ b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/DependencyList.java
@@ -49,9 +49,13 @@ public class DependencyList extends Export {
}
@Override
- protected Integer export() throws Exception {
+ public Integer doCall() throws Exception {
this.quiet = true; // be quiet and generate from fresh data to ensure the output is up-to-date
+ return super.doCall();
+ }
+ @Override
+ protected Integer export() throws Exception {
if (!"gav".equals(output) && !"maven".equals(output)) {
System.err.println("--output must be either gav or maven, was: " + output);
return 1;
@@ -176,6 +180,7 @@ public class DependencyList extends Export {
}
// allow configuring versions from profile
this.javaVersion = prop.getProperty("camel.jbang.javaVersion", this.javaVersion);
+ this.camelVersion = prop.getProperty("camel.jbang.camelVersion", this.camelVersion);
this.kameletsVersion = prop.getProperty("camel.jbang.kameletsVersion", this.kameletsVersion);
this.localKameletDir = prop.getProperty("camel.jbang.localKameletDir", this.localKameletDir);
this.quarkusGroupId = prop.getProperty("camel.jbang.quarkusGroupId", this.quarkusGroupId);
@@ -193,6 +198,7 @@ public class DependencyList extends Export {
runtime = "camel-main";
}
+ // turn off noise
if ("spring-boot".equals(runtime) || "camel-spring-boot".equals(runtime)) {
return export(new ExportSpringBoot(getMain()));
} else if ("quarkus".equals(runtime) || "camel-quarkus".equals(runtime)) {
diff --git a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Export.java b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Export.java
index b9752cbe61e..a6d85a34fb2 100644
--- a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Export.java
+++ b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Export.java
@@ -48,6 +48,7 @@ public class Export extends ExportBaseCommand {
}
// allow configuring versions from profile
this.javaVersion = prop.getProperty("camel.jbang.javaVersion", this.javaVersion);
+ this.camelVersion = prop.getProperty("camel.jbang.camelVersion", this.camelVersion);
this.kameletsVersion = prop.getProperty("camel.jbang.kameletsVersion", this.kameletsVersion);
this.localKameletDir = prop.getProperty("camel.jbang.localKameletDir", this.localKameletDir);
this.quarkusGroupId = prop.getProperty("camel.jbang.quarkusGroupId", this.quarkusGroupId);
@@ -93,6 +94,7 @@ public class Export extends ExportBaseCommand {
cmd.exportDir = this.exportDir;
cmd.fresh = this.fresh;
cmd.javaVersion = this.javaVersion;
+ cmd.camelVersion = this.camelVersion;
cmd.kameletsVersion = this.kameletsVersion;
cmd.localKameletDir = this.localKameletDir;
cmd.logging = this.logging;
diff --git a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportBaseCommand.java b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportBaseCommand.java
index 8479ca0bc28..48cc7c1954d 100644
--- a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportBaseCommand.java
+++ b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportBaseCommand.java
@@ -88,6 +88,10 @@ abstract class ExportBaseCommand extends CamelCommand {
@CommandLine.Option(names = { "--java-version" }, description = "Java version (11 or 17)", defaultValue = "11")
protected String javaVersion;
+ @CommandLine.Option(names = { "--camel-version" },
+ description = "To export using a different Camel version than the default version.")
+ protected String camelVersion;
+
@CommandLine.Option(names = {
"--kamelets-version" }, description = "Apache Camel Kamelets version", defaultValue = "3.20.2")
protected String kameletsVersion;
@@ -163,7 +167,9 @@ abstract class ExportBaseCommand extends CamelCommand {
RuntimeUtil.configureLog("off", false, false, false, true);
}
- printConfigurationValues("Exporting integration with the following configuration:");
+ if (!quiet) {
+ printConfigurationValues("Exporting integration with the following configuration:");
+ }
// export
return export();
}
diff --git a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportCamelMain.java b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportCamelMain.java
index 2197099df8e..edc00d4742e 100644
--- a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportCamelMain.java
+++ b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportCamelMain.java
@@ -130,8 +130,10 @@ class ExportCamelMain extends Export {
String context = IOHelper.loadText(is);
IOHelper.close(is);
- CamelCatalog catalog = new DefaultCamelCatalog();
- String camelVersion = catalog.getCatalogVersion();
+ if (camelVersion == null) {
+ CamelCatalog catalog = new DefaultCamelCatalog();
+ camelVersion = catalog.getCatalogVersion();
+ }
context = context.replaceFirst("\\{\\{ \\.GroupId }}", ids[0]);
context = context.replaceFirst("\\{\\{ \\.ArtifactId }}", ids[1]);
diff --git a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Run.java b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Run.java
index 603d134c2a0..991433ba07a 100644
--- a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Run.java
+++ b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/Run.java
@@ -222,7 +222,9 @@ public class Run extends CamelCommand {
@Override
public Integer doCall() throws Exception {
- printConfigurationValues("Running integration with the following configuration:");
+ if (!silentRun) {
+ printConfigurationValues("Running integration with the following configuration:");
+ }
// run
return run();
}