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 2024/09/18 10:36:34 UTC
(camel) branch main updated: CAMEL-21104: camel-jbang - Add option clean-dir to export to also clean when using export to current dir.
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
The following commit(s) were added to refs/heads/main by this push:
new cfb8ffea865 CAMEL-21104: camel-jbang - Add option clean-dir to export to also clean when using export to current dir.
cfb8ffea865 is described below
commit cfb8ffea865912400f9c5798f2cd69cbd631467f
Author: Claus Ibsen <cl...@gmail.com>
AuthorDate: Wed Sep 18 12:36:18 2024 +0200
CAMEL-21104: camel-jbang - Add option clean-dir to export to also clean when using export to current dir.
---
.../main/java/org/apache/camel/dsl/jbang/core/commands/Export.java | 1 +
.../org/apache/camel/dsl/jbang/core/commands/ExportBaseCommand.java | 4 ++++
.../org/apache/camel/dsl/jbang/core/commands/ExportCamelMain.java | 4 +++-
.../java/org/apache/camel/dsl/jbang/core/commands/ExportQuarkus.java | 4 +++-
.../org/apache/camel/dsl/jbang/core/commands/ExportSpringBoot.java | 4 +++-
5 files changed, 14 insertions(+), 3 deletions(-)
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 b12f1515499..612406d5b96 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
@@ -123,6 +123,7 @@ public class Export extends ExportBaseCommand {
cmd.mavenCentralEnabled = this.mavenCentralEnabled;
cmd.mavenApacheSnapshotEnabled = this.mavenApacheSnapshotEnabled;
cmd.exportDir = this.exportDir;
+ cmd.cleanExportDir = this.cleanExportDir;
cmd.fresh = this.fresh;
cmd.download = this.download;
cmd.javaVersion = this.javaVersion;
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 0025b60493a..656e7eaee1a 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
@@ -187,6 +187,10 @@ public abstract class ExportBaseCommand extends CamelCommand {
"--directory" }, description = "Directory where the project will be exported", defaultValue = ".")
protected String exportDir;
+ @CommandLine.Option(names = { "--clean-dir" },
+ description = "If exporting to current directory (default) then all existing files are preserved. Enabling this option will force cleaning current directory including all sub dirs (use this with care)")
+ protected boolean cleanExportDir;
+
@CommandLine.Option(names = { "--logging-level" }, defaultValue = "info", description = "Logging level")
protected String loggingLevel = "info";
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 709552d1e10..3f3f7338220 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
@@ -150,7 +150,9 @@ class ExportCamelMain extends Export {
}
}
- if (!exportDir.equals(".")) {
+ if (cleanExportDir || !exportDir.equals(".")) {
+ // cleaning current dir can be a bit dangerous so only clean if explicit enabled
+ // otherwise always clean export-dir to avoid stale data
CommandHelper.cleanExportDir(exportDir);
}
// copy to export dir and remove work dir
diff --git a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportQuarkus.java b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportQuarkus.java
index 88914af1179..19a01ce43b4 100644
--- a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportQuarkus.java
+++ b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportQuarkus.java
@@ -133,7 +133,9 @@ class ExportQuarkus extends Export {
}
}
- if (!exportDir.equals(".")) {
+ if (cleanExportDir || !exportDir.equals(".")) {
+ // cleaning current dir can be a bit dangerous so only clean if explicit enabled
+ // otherwise always clean export-dir to avoid stale data
CommandHelper.cleanExportDir(exportDir);
}
// copy to export dir and remove work dir
diff --git a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportSpringBoot.java b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportSpringBoot.java
index 72979ac35b9..9a2225f5109 100644
--- a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportSpringBoot.java
+++ b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/ExportSpringBoot.java
@@ -134,7 +134,9 @@ class ExportSpringBoot extends Export {
}
}
- if (!exportDir.equals(".")) {
+ if (cleanExportDir || !exportDir.equals(".")) {
+ // cleaning current dir can be a bit dangerous so only clean if explicit enabled
+ // otherwise always clean export-dir to avoid stale data
CommandHelper.cleanExportDir(exportDir);
}
// copy to export dir and remove work dir