This is an automated email from the ASF dual-hosted git repository.

cdeppisch 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 7830ceee727 chore(camel-jbang): Do not use single character shortcut 
options
7830ceee727 is described below

commit 7830ceee72716bf07459df7dad852e4252856373
Author: Christoph Deppisch <cdeppi...@redhat.com>
AuthorDate: Wed Jul 10 12:31:09 2024 +0200

    chore(camel-jbang): Do not use single character shortcut options
---
 .../modules/ROOT/pages/camel-jbang-k.adoc          | 22 +++++++-------
 .../modules/ROOT/pages/camel-jbang-kubernetes.adoc |  2 +-
 .../modules/ROOT/pages/camel-jbang.adoc            |  1 -
 .../dsl/jbang/core/commands/plugin/PluginAdd.java  | 12 ++++----
 .../dsl/jbang/core/commands/plugin/PluginGet.java  |  2 +-
 .../camel/dsl/jbang/core/common/PluginHelper.java  |  2 +-
 .../camel/camel-jbang-plugin/camel-jbang-plugin-k  |  2 +-
 .../camel/dsl/jbang/core/commands/k/Bind.java      |  4 +--
 .../k/{KubeCommand.java => CamelKCommand.java}     |  4 +--
 .../k/{KubePlugin.java => CamelKPlugin.java}       |  4 +--
 .../dsl/jbang/core/commands/k/IntegrationLogs.java |  4 +--
 .../dsl/jbang/core/commands/k/IntegrationRun.java  | 31 +++++++++----------
 .../camel/dsl/jbang/core/commands/k/BindTest.java  |  6 ++--
 .../k/{KubeBaseTest.java => CamelKBaseTest.java}   |  6 ++--
 ...CommandMainTest.java => CamelKCommandTest.java} | 15 +++++-----
 .../core/commands/k/IntegrationDeleteTest.java     |  2 +-
 .../jbang/core/commands/k/IntegrationGetTest.java  |  2 +-
 .../jbang/core/commands/k/IntegrationLogsTest.java |  4 +--
 .../jbang/core/commands/k/IntegrationRunTest.java  |  6 ++--
 .../commands/kubernetes/KubernetesBaseTest.java    |  8 +++++
 .../commands/kubernetes/KubernetesCommandTest.java | 35 ++++++++++++++++++++++
 .../commands/kubernetes/KubernetesRunTest.java     |  7 -----
 22 files changed, 108 insertions(+), 73 deletions(-)

diff --git a/docs/user-manual/modules/ROOT/pages/camel-jbang-k.adoc 
b/docs/user-manual/modules/ROOT/pages/camel-jbang-k.adoc
index ec7a2b7252d..f817955a4d2 100644
--- a/docs/user-manual/modules/ROOT/pages/camel-jbang-k.adoc
+++ b/docs/user-manual/modules/ROOT/pages/camel-jbang-k.adoc
@@ -72,7 +72,7 @@ The run command offers a lot more options that you may use to 
configure the Came
 |--image
 |An image built externally (for instance via CI/CD). Enabling it will skip the 
integration build phase.
 
-|--kit, -k
+|--kit
 |The kit used to run the integration.
 
 |--trait-profile
@@ -87,10 +87,10 @@ The run command offers a lot more options that you may use 
to configure the Came
 |--operator-id
 |Operator id selected to manage this integration. (default=camel-k)
 
-|--dependency, -d
+|--dependency
 |Adds dependency that should be included, use "camel:" prefix for a Camel 
component, "mvn:org.my:app:1.0" for a Maven dependency.
 
-|--property, -p
+|--property
 |Add a runtime property or properties file from a path, a config map or a 
secret (syntax: 
[my-key=my-value,file:/path/to/my-conf.properties,[configmap,secret]:name]).
 
 |--build-property
@@ -105,13 +105,13 @@ The run command offers a lot more options that you may 
use to configure the Came
 |--open-api
 |Add an OpenAPI spec (syntax: [configmap,file]:name).
 
-|--env, -e
+|--env
 |Set an environment variable in the integration container, for instance "-e 
MY_VAR=my-value".
 
-|--volume, -v
+|--volume
 |Mount a volume into the integration container, for instance "-v 
pvcname:/container/path".
 
-|--connect, -c
+|--connect
 |A Service that the integration should bind to, specified as 
[[apigroup/]version:]kind:[namespace/]name.
 
 |--source
@@ -126,7 +126,7 @@ The run command offers a lot more options that you may use 
to configure the Came
 |--label
 |Add a label to the integration. Use name values pairs like "--label 
my.company=hello".
 
-|--traits, -t
+|--trait
 |Add a trait configuration to the integration. Use name values pairs like 
"--trait trait.name.config=hello".
 
 |--use-flows
@@ -135,13 +135,13 @@ The run command offers a lot more options that you may 
use to configure the Came
 |--compression
 |Enable storage of sources and resources as a compressed binary blobs.
 
-|--wait, -w
+|--wait
 |Wait for the integration to become ready.
 
-|--logs, -l
+|--logs
 |Print logs after integration has been started.
 
-|--output, -o
+|--output
 |Just output the generated integration custom resource (supports: yaml or json 
or k8s).
 |=======================================================================
 
@@ -226,7 +226,7 @@ The Camel K bind command supports the following options:
 |--connect
 |A Service that the integration should bind to, specified as 
[[apigroup/]version:]kind:[namespace/]name.
 
-|--traits
+|--trait
 |Add a trait configuration to the integration. Use name values pairs like 
"--trait trait.name.config=hello".
 
 |--wait
diff --git a/docs/user-manual/modules/ROOT/pages/camel-jbang-kubernetes.adoc 
b/docs/user-manual/modules/ROOT/pages/camel-jbang-kubernetes.adoc
index e66a4d66714..fc777fae17a 100644
--- a/docs/user-manual/modules/ROOT/pages/camel-jbang-kubernetes.adoc
+++ b/docs/user-manual/modules/ROOT/pages/camel-jbang-kubernetes.adoc
@@ -130,7 +130,7 @@ The Camel JBang Kubernetes export command provides several 
options to customize
 |--label
 |Add a label to the integration. Use name values pairs like "--label 
my.company=hello".
 
-|--traits
+|--trait
 |Add a trait configuration to the integration. Use name values pairs like 
"--trait trait.name.config=hello".
 
 |--image
diff --git a/docs/user-manual/modules/ROOT/pages/camel-jbang.adoc 
b/docs/user-manual/modules/ROOT/pages/camel-jbang.adoc
index 9c9ec8bf09f..052cc67b0da 100644
--- a/docs/user-manual/modules/ROOT/pages/camel-jbang.adoc
+++ b/docs/user-manual/modules/ROOT/pages/camel-jbang.adoc
@@ -3821,7 +3821,6 @@ camel config set camel-version=4.0.1
 camel run * --camel-version=4.3.0
 ----
 
-
 === Set and unset configuration
 
 Every Camel JBang option is added to the user configuration. For example, to 
export a simple project such as
diff --git 
a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/plugin/PluginAdd.java
 
b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/plugin/PluginAdd.java
index 33442baa802..ebea3686e75 100644
--- 
a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/plugin/PluginAdd.java
+++ 
b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/plugin/PluginAdd.java
@@ -33,29 +33,29 @@ public class PluginAdd extends PluginBaseCommand {
                             paramLabel = "<name>")
     String name;
 
-    @CommandLine.Option(names = { "--command", "-c" },
+    @CommandLine.Option(names = { "--command" },
                         description = "The command that the plugin uses.")
     String command;
 
-    @CommandLine.Option(names = { "--description", "-d" },
+    @CommandLine.Option(names = { "--description" },
                         description = "A short description of the plugin.")
     String description;
 
-    @CommandLine.Option(names = { "--artifactId", "-a" },
+    @CommandLine.Option(names = { "--artifactId" },
                         description = "Maven artifactId.")
     String artifactId;
 
-    @CommandLine.Option(names = { "--groupId", "-g" },
+    @CommandLine.Option(names = { "--groupId" },
                         defaultValue = "org.apache.camel",
                         description = "Maven groupId.")
     String groupId = "org.apache.camel";
 
-    @CommandLine.Option(names = { "--version", "-v" },
+    @CommandLine.Option(names = { "--version" },
                         defaultValue = "${camel-version}",
                         description = "Maven artifact version.")
     String version;
 
-    @CommandLine.Option(names = { "--first-version", "-fv" },
+    @CommandLine.Option(names = { "--first-version" },
                         defaultValue = "${camel-version}",
                         description = "First version of this plugin.")
     String firstVersion;
diff --git 
a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/plugin/PluginGet.java
 
b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/plugin/PluginGet.java
index 8769323b56f..9a254f8bf60 100644
--- 
a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/plugin/PluginGet.java
+++ 
b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/plugin/PluginGet.java
@@ -33,7 +33,7 @@ import picocli.CommandLine;
                      description = "Display available plugins.")
 public class PluginGet extends PluginBaseCommand {
 
-    @CommandLine.Option(names = { "--all", "-a" }, defaultValue = "false", 
description = "Display all available plugins.")
+    @CommandLine.Option(names = { "--all" }, defaultValue = "false", 
description = "Display all available plugins.")
     public boolean all;
 
     public PluginGet(CamelJBangMain main) {
diff --git 
a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/common/PluginHelper.java
 
b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/common/PluginHelper.java
index d087c75d7fe..fbe0af60b29 100644
--- 
a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/common/PluginHelper.java
+++ 
b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/common/PluginHelper.java
@@ -90,7 +90,7 @@ public final class PluginHelper {
                 }
 
                 // check if plugin version can be loaded (cannot if we use an 
older camel version than the plugin)
-                if (!firstVersion.isBlank()) {
+                if (!version.isBlank() && !firstVersion.isBlank()) {
                     versionCheck(main, version, firstVersion, command);
                 }
 
diff --git 
a/dsl/camel-jbang/camel-jbang-plugin-k/src/generated/resources/META-INF/services/org/apache/camel/camel-jbang-plugin/camel-jbang-plugin-k
 
b/dsl/camel-jbang/camel-jbang-plugin-k/src/generated/resources/META-INF/services/org/apache/camel/camel-jbang-plugin/camel-jbang-plugin-k
index 5a3ee5c3e1b..810192416b6 100644
--- 
a/dsl/camel-jbang/camel-jbang-plugin-k/src/generated/resources/META-INF/services/org/apache/camel/camel-jbang-plugin/camel-jbang-plugin-k
+++ 
b/dsl/camel-jbang/camel-jbang-plugin-k/src/generated/resources/META-INF/services/org/apache/camel/camel-jbang-plugin/camel-jbang-plugin-k
@@ -1,2 +1,2 @@
 # Generated by camel build tools - do NOT edit this file!
-class=org.apache.camel.dsl.jbang.core.commands.k.KubePlugin
+class=org.apache.camel.dsl.jbang.core.commands.k.CamelKPlugin
diff --git 
a/dsl/camel-jbang/camel-jbang-plugin-k/src/main/java/org/apache/camel/dsl/jbang/core/commands/k/Bind.java
 
b/dsl/camel-jbang/camel-jbang-plugin-k/src/main/java/org/apache/camel/dsl/jbang/core/commands/k/Bind.java
index 3bfa1d9534a..82007dc2868 100644
--- 
a/dsl/camel-jbang/camel-jbang-plugin-k/src/main/java/org/apache/camel/dsl/jbang/core/commands/k/Bind.java
+++ 
b/dsl/camel-jbang/camel-jbang-plugin-k/src/main/java/org/apache/camel/dsl/jbang/core/commands/k/Bind.java
@@ -133,10 +133,10 @@ public class Bind extends KubernetesBaseCommand {
 
         // --operator-id={id} is a syntax sugar for '--annotation 
camel.apache.org/operator.id={id}'
         if (annotations == null) {
-            annotations = new String[] { 
"%s=%s".formatted(KubeCommand.OPERATOR_ID_LABEL, operatorId) };
+            annotations = new String[] { 
"%s=%s".formatted(CamelKCommand.OPERATOR_ID_LABEL, operatorId) };
         } else {
             annotations = Arrays.copyOf(annotations, annotations.length + 1);
-            annotations[annotations.length - 1] = 
"%s=%s".formatted(KubeCommand.OPERATOR_ID_LABEL, operatorId);
+            annotations[annotations.length - 1] = 
"%s=%s".formatted(CamelKCommand.OPERATOR_ID_LABEL, operatorId);
         }
 
         String annotationsContext = "";
diff --git 
a/dsl/camel-jbang/camel-jbang-plugin-k/src/main/java/org/apache/camel/dsl/jbang/core/commands/k/KubeCommand.java
 
b/dsl/camel-jbang/camel-jbang-plugin-k/src/main/java/org/apache/camel/dsl/jbang/core/commands/k/CamelKCommand.java
similarity index 94%
rename from 
dsl/camel-jbang/camel-jbang-plugin-k/src/main/java/org/apache/camel/dsl/jbang/core/commands/k/KubeCommand.java
rename to 
dsl/camel-jbang/camel-jbang-plugin-k/src/main/java/org/apache/camel/dsl/jbang/core/commands/k/CamelKCommand.java
index f54e9e21ebe..840b9d23202 100644
--- 
a/dsl/camel-jbang/camel-jbang-plugin-k/src/main/java/org/apache/camel/dsl/jbang/core/commands/k/KubeCommand.java
+++ 
b/dsl/camel-jbang/camel-jbang-plugin-k/src/main/java/org/apache/camel/dsl/jbang/core/commands/k/CamelKCommand.java
@@ -22,7 +22,7 @@ import picocli.CommandLine;
 
 @CommandLine.Command(name = "k",
                      description = "Manage Camel integrations on Kubernetes 
(use k --help to see sub commands)")
-public class KubeCommand extends KubernetesBaseCommand {
+public class CamelKCommand extends KubernetesBaseCommand {
 
     static final String OPERATOR_ID_LABEL = "camel.apache.org/operator.id";
     static final String INTEGRATION_LABEL = "camel.apache.org/integration";
@@ -31,7 +31,7 @@ public class KubeCommand extends KubernetesBaseCommand {
     public static final String INTEGRATION_PROFILE_ANNOTATION = 
"camel.apache.org/integration-profile.id";
     public static final String INTEGRATION_PROFILE_NAMESPACE_ANNOTATION = 
"camel.apache.org/integration-profile.namespace";
 
-    public KubeCommand(CamelJBangMain main) {
+    public CamelKCommand(CamelJBangMain main) {
         super(main);
     }
 
diff --git 
a/dsl/camel-jbang/camel-jbang-plugin-k/src/main/java/org/apache/camel/dsl/jbang/core/commands/k/KubePlugin.java
 
b/dsl/camel-jbang/camel-jbang-plugin-k/src/main/java/org/apache/camel/dsl/jbang/core/commands/k/CamelKPlugin.java
similarity index 94%
rename from 
dsl/camel-jbang/camel-jbang-plugin-k/src/main/java/org/apache/camel/dsl/jbang/core/commands/k/KubePlugin.java
rename to 
dsl/camel-jbang/camel-jbang-plugin-k/src/main/java/org/apache/camel/dsl/jbang/core/commands/k/CamelKPlugin.java
index be96054d481..39b5f2a22f0 100644
--- 
a/dsl/camel-jbang/camel-jbang-plugin-k/src/main/java/org/apache/camel/dsl/jbang/core/commands/k/KubePlugin.java
+++ 
b/dsl/camel-jbang/camel-jbang-plugin-k/src/main/java/org/apache/camel/dsl/jbang/core/commands/k/CamelKPlugin.java
@@ -22,11 +22,11 @@ import org.apache.camel.dsl.jbang.core.common.Plugin;
 import picocli.CommandLine;
 
 @CamelJBangPlugin(name = "camel-jbang-plugin-k", firstVersion = "4.4.0")
-public class KubePlugin implements Plugin {
+public class CamelKPlugin implements Plugin {
 
     @Override
     public void customize(CommandLine commandLine, CamelJBangMain main) {
-        var cmd = new picocli.CommandLine(new KubeCommand(main))
+        var cmd = new picocli.CommandLine(new CamelKCommand(main))
                 .addSubcommand(Agent.ID, new picocli.CommandLine(new 
Agent(main)))
                 .addSubcommand("get", new picocli.CommandLine(new 
IntegrationGet(main)))
                 .addSubcommand("run", new picocli.CommandLine(new 
IntegrationRun(main)))
diff --git 
a/dsl/camel-jbang/camel-jbang-plugin-k/src/main/java/org/apache/camel/dsl/jbang/core/commands/k/IntegrationLogs.java
 
b/dsl/camel-jbang/camel-jbang-plugin-k/src/main/java/org/apache/camel/dsl/jbang/core/commands/k/IntegrationLogs.java
index 4e50a802830..ed750868baa 100644
--- 
a/dsl/camel-jbang/camel-jbang-plugin-k/src/main/java/org/apache/camel/dsl/jbang/core/commands/k/IntegrationLogs.java
+++ 
b/dsl/camel-jbang/camel-jbang-plugin-k/src/main/java/org/apache/camel/dsl/jbang/core/commands/k/IntegrationLogs.java
@@ -43,8 +43,8 @@ public class IntegrationLogs extends PodLogs {
             return 1;
         }
 
-        label = "%s=%s".formatted(KubeCommand.INTEGRATION_LABEL, 
integrationName);
-        container = KubeCommand.INTEGRATION_CONTAINER_NAME;
+        label = "%s=%s".formatted(CamelKCommand.INTEGRATION_LABEL, 
integrationName);
+        container = CamelKCommand.INTEGRATION_CONTAINER_NAME;
 
         return super.doCall();
     }
diff --git 
a/dsl/camel-jbang/camel-jbang-plugin-k/src/main/java/org/apache/camel/dsl/jbang/core/commands/k/IntegrationRun.java
 
b/dsl/camel-jbang/camel-jbang-plugin-k/src/main/java/org/apache/camel/dsl/jbang/core/commands/k/IntegrationRun.java
index 004aa65c338..80a7b5d4f15 100644
--- 
a/dsl/camel-jbang/camel-jbang-plugin-k/src/main/java/org/apache/camel/dsl/jbang/core/commands/k/IntegrationRun.java
+++ 
b/dsl/camel-jbang/camel-jbang-plugin-k/src/main/java/org/apache/camel/dsl/jbang/core/commands/k/IntegrationRun.java
@@ -70,7 +70,7 @@ public class IntegrationRun extends KubernetesBaseCommand {
                         description = "An image built externally (for instance 
via CI/CD). Enabling it will skip the integration build phase.")
     String image;
 
-    @CommandLine.Option(names = { "--kit", "-k" }, description = "The kit used 
to run the integration.")
+    @CommandLine.Option(names = { "--kit" }, description = "The kit used to 
run the integration.")
     String kit;
 
     @CommandLine.Option(names = { "--trait-profile" }, description = "The 
trait profile to use for the deployment.")
@@ -86,15 +86,15 @@ public class IntegrationRun extends KubernetesBaseCommand {
                         description = "The path of the YAML file containing a 
PodSpec template to be used for the integration pods.")
     String podTemplate;
 
-    @CommandLine.Option(names = { "--operator-id", "-x" }, defaultValue = 
"camel-k",
+    @CommandLine.Option(names = { "--operator-id" }, defaultValue = "camel-k",
                         description = "Operator id selected to manage this 
integration.")
     String operatorId = "camel-k";
 
-    @CommandLine.Option(names = { "--dependency", "-d" },
+    @CommandLine.Option(names = { "--dependency" },
                         description = "Adds dependency that should be 
included, use \"camel:\" prefix for a Camel component, \"mvn:org.my:app:1.0\" 
for a Maven dependency.")
     String[] dependencies;
 
-    @CommandLine.Option(names = { "--property", "-p" },
+    @CommandLine.Option(names = { "--property" },
                         description = "Add a runtime property or properties 
file from a path, a config map or a secret (syntax: 
[my-key=my-value|file:/path/to/my-conf.properties|[configmap|secret]:name]).")
     String[] properties;
 
@@ -113,15 +113,15 @@ public class IntegrationRun extends KubernetesBaseCommand 
{
     @CommandLine.Option(names = { "--open-api" }, description = "Add an 
OpenAPI spec (syntax: [configmap|file]:name).")
     String[] openApis;
 
-    @CommandLine.Option(names = { "--env", "-e" },
+    @CommandLine.Option(names = { "--env" },
                         description = "Set an environment variable in the 
integration container, for instance \"-e MY_VAR=my-value\".")
     String[] envVars;
 
-    @CommandLine.Option(names = { "--volume", "-v" },
+    @CommandLine.Option(names = { "--volume" },
                         description = "Mount a volume into the integration 
container, for instance \"-v pvcname:/container/path\".")
     String[] volumes;
 
-    @CommandLine.Option(names = { "--connect", "-c" },
+    @CommandLine.Option(names = { "--connect" },
                         description = "A Service that the integration should 
bind to, specified as [[apigroup/]version:]kind:[namespace/]name.")
     String[] connects;
 
@@ -140,7 +140,7 @@ public class IntegrationRun extends KubernetesBaseCommand {
                         description = "Add a label to the integration. Use 
name values pairs like \"--label my.company=hello\".")
     String[] labels;
 
-    @CommandLine.Option(names = { "--traits", "-t" },
+    @CommandLine.Option(names = { "--trait" },
                         description = "Add a trait configuration to the 
integration. Use name values pairs like \"--trait trait.name.config=hello\".")
     String[] traits;
 
@@ -152,13 +152,13 @@ public class IntegrationRun extends KubernetesBaseCommand 
{
                         description = "Enable storage of sources and resources 
as a compressed binary blobs.")
     boolean compression;
 
-    @CommandLine.Option(names = { "--wait", "-w" }, description = "Wait for 
the integration to become ready.")
+    @CommandLine.Option(names = { "--wait" }, description = "Wait for the 
integration to become ready.")
     boolean wait;
 
-    @CommandLine.Option(names = { "--logs", "-l" }, description = "Print logs 
after integration has been started.")
+    @CommandLine.Option(names = { "--logs" }, description = "Print logs after 
integration has been started.")
     boolean logs;
 
-    @CommandLine.Option(names = { "--output", "-o" },
+    @CommandLine.Option(names = { "--output" },
                         description = "Just output the generated integration 
custom resource (supports: yaml or json).")
     String output;
 
@@ -221,17 +221,18 @@ public class IntegrationRun extends KubernetesBaseCommand 
{
         }
 
         // --operator-id={id} is a syntax sugar for '--annotation 
camel.apache.org/operator.id={id}'
-        
integration.getMetadata().getAnnotations().put(KubeCommand.OPERATOR_ID_LABEL, 
operatorId);
+        
integration.getMetadata().getAnnotations().put(CamelKCommand.OPERATOR_ID_LABEL, 
operatorId);
 
         // --integration-profile={id} is a syntax sugar for '--annotation 
camel.apache.org/integration-profile.id={id}'
         if (integrationProfile != null) {
             if (integrationProfile.contains("/")) {
                 String[] namespacedName = integrationProfile.split("/", 2);
-                
integration.getMetadata().getAnnotations().put(KubeCommand.INTEGRATION_PROFILE_NAMESPACE_ANNOTATION,
+                
integration.getMetadata().getAnnotations().put(CamelKCommand.INTEGRATION_PROFILE_NAMESPACE_ANNOTATION,
                         namespacedName[0]);
-                
integration.getMetadata().getAnnotations().put(KubeCommand.INTEGRATION_PROFILE_ANNOTATION,
 namespacedName[1]);
+                
integration.getMetadata().getAnnotations().put(CamelKCommand.INTEGRATION_PROFILE_ANNOTATION,
 namespacedName[1]);
             } else {
-                
integration.getMetadata().getAnnotations().put(KubeCommand.INTEGRATION_PROFILE_ANNOTATION,
 integrationProfile);
+                
integration.getMetadata().getAnnotations().put(CamelKCommand.INTEGRATION_PROFILE_ANNOTATION,
+                        integrationProfile);
             }
         }
 
diff --git 
a/dsl/camel-jbang/camel-jbang-plugin-k/src/test/java/org/apache/camel/dsl/jbang/core/commands/k/BindTest.java
 
b/dsl/camel-jbang/camel-jbang-plugin-k/src/test/java/org/apache/camel/dsl/jbang/core/commands/k/BindTest.java
index 0701e7a5d10..1a9405cd574 100644
--- 
a/dsl/camel-jbang/camel-jbang-plugin-k/src/test/java/org/apache/camel/dsl/jbang/core/commands/k/BindTest.java
+++ 
b/dsl/camel-jbang/camel-jbang-plugin-k/src/test/java/org/apache/camel/dsl/jbang/core/commands/k/BindTest.java
@@ -23,7 +23,7 @@ import org.apache.camel.v1.Pipe;
 import org.junit.jupiter.api.Assertions;
 import org.junit.jupiter.api.Test;
 
-class BindTest extends KubeBaseTest {
+class BindTest extends CamelKBaseTest {
 
     @Test
     public void shouldCreatePipe() throws Exception {
@@ -34,7 +34,7 @@ class BindTest extends KubeBaseTest {
         Assertions.assertEquals("Pipe timer-to-http created", 
printer.getOutput());
 
         Pipe created = 
kubernetesClient.resources(Pipe.class).withName("timer-to-http").get();
-        Assertions.assertEquals("camel-k", 
created.getMetadata().getAnnotations().get(KubeCommand.OPERATOR_ID_LABEL));
+        Assertions.assertEquals("camel-k", 
created.getMetadata().getAnnotations().get(CamelKCommand.OPERATOR_ID_LABEL));
     }
 
     @Test
@@ -53,7 +53,7 @@ class BindTest extends KubeBaseTest {
         Assertions.assertEquals("Pipe timer-to-log updated", 
printer.getOutput());
 
         Pipe created = 
kubernetesClient.resources(Pipe.class).withName("timer-to-log").get();
-        Assertions.assertEquals("camel-k", 
created.getMetadata().getAnnotations().get(KubeCommand.OPERATOR_ID_LABEL));
+        Assertions.assertEquals("camel-k", 
created.getMetadata().getAnnotations().get(CamelKCommand.OPERATOR_ID_LABEL));
     }
 
     @Test
diff --git 
a/dsl/camel-jbang/camel-jbang-plugin-k/src/test/java/org/apache/camel/dsl/jbang/core/commands/k/KubeBaseTest.java
 
b/dsl/camel-jbang/camel-jbang-plugin-k/src/test/java/org/apache/camel/dsl/jbang/core/commands/k/CamelKBaseTest.java
similarity index 94%
rename from 
dsl/camel-jbang/camel-jbang-plugin-k/src/test/java/org/apache/camel/dsl/jbang/core/commands/k/KubeBaseTest.java
rename to 
dsl/camel-jbang/camel-jbang-plugin-k/src/test/java/org/apache/camel/dsl/jbang/core/commands/k/CamelKBaseTest.java
index c7382062658..06f4df9cd5b 100644
--- 
a/dsl/camel-jbang/camel-jbang-plugin-k/src/test/java/org/apache/camel/dsl/jbang/core/commands/k/KubeBaseTest.java
+++ 
b/dsl/camel-jbang/camel-jbang-plugin-k/src/test/java/org/apache/camel/dsl/jbang/core/commands/k/CamelKBaseTest.java
@@ -41,7 +41,7 @@ import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.TestInstance;
 
 @TestInstance(TestInstance.Lifecycle.PER_CLASS)
-public class KubeBaseTest {
+public class CamelKBaseTest {
 
     protected static Integration integration;
     protected static Pipe pipe;
@@ -82,7 +82,7 @@ public class KubeBaseTest {
     protected Integration createIntegration(String name) throws IOException {
         if (integration == null) {
             integration = KubernetesHelper.yaml().loadAs(
-                    
IOHelper.loadText(KubeBaseTest.class.getResourceAsStream("integration.yaml")), 
Integration.class);
+                    
IOHelper.loadText(CamelKBaseTest.class.getResourceAsStream("integration.yaml")),
 Integration.class);
         }
 
         Integration created = new Integration();
@@ -101,7 +101,7 @@ public class KubeBaseTest {
     protected Pipe createPipe(String name) throws IOException {
         if (pipe == null) {
             pipe = KubernetesHelper.yaml().loadAs(
-                    
IOHelper.loadText(KubeBaseTest.class.getResourceAsStream("pipe.yaml")), 
Pipe.class);
+                    
IOHelper.loadText(CamelKBaseTest.class.getResourceAsStream("pipe.yaml")), 
Pipe.class);
         }
 
         Pipe created = new Pipe();
diff --git 
a/dsl/camel-jbang/camel-jbang-plugin-k/src/test/java/org/apache/camel/dsl/jbang/core/commands/k/KubeCommandMainTest.java
 
b/dsl/camel-jbang/camel-jbang-plugin-k/src/test/java/org/apache/camel/dsl/jbang/core/commands/k/CamelKCommandTest.java
similarity index 90%
rename from 
dsl/camel-jbang/camel-jbang-plugin-k/src/test/java/org/apache/camel/dsl/jbang/core/commands/k/KubeCommandMainTest.java
rename to 
dsl/camel-jbang/camel-jbang-plugin-k/src/test/java/org/apache/camel/dsl/jbang/core/commands/k/CamelKCommandTest.java
index 0d48067f0f1..7ae64310a25 100644
--- 
a/dsl/camel-jbang/camel-jbang-plugin-k/src/test/java/org/apache/camel/dsl/jbang/core/commands/k/KubeCommandMainTest.java
+++ 
b/dsl/camel-jbang/camel-jbang-plugin-k/src/test/java/org/apache/camel/dsl/jbang/core/commands/k/CamelKCommandTest.java
@@ -33,7 +33,7 @@ import org.apache.camel.v1.Integration;
 import org.junit.jupiter.api.Assertions;
 import org.junit.jupiter.api.Test;
 
-class KubeCommandMainTest extends KubeBaseTest {
+class CamelKCommandTest extends CamelKBaseTest {
 
     @Test
     public void shouldDeleteIntegration() throws IOException {
@@ -65,11 +65,11 @@ class KubeCommandMainTest extends KubeBaseTest {
         Pod pod = new PodBuilder()
                 .withNewMetadata()
                 .withName(integration.getMetadata().getName())
-                
.withLabels(Collections.singletonMap(KubeCommand.INTEGRATION_LABEL, 
integration.getMetadata().getName()))
+                
.withLabels(Collections.singletonMap(CamelKCommand.INTEGRATION_LABEL, 
integration.getMetadata().getName()))
                 .endMetadata()
                 .withNewSpec()
                 .addToContainers(new ContainerBuilder()
-                        .withName(KubeCommand.INTEGRATION_CONTAINER_NAME)
+                        .withName(CamelKCommand.INTEGRATION_CONTAINER_NAME)
                         .build())
                 .endSpec()
                 .withNewStatus()
@@ -89,12 +89,12 @@ class KubeCommandMainTest extends KubeBaseTest {
 
         Integration integration = 
kubernetesClient.resources(Integration.class).withName("route").get();
         Assertions.assertNotNull(integration);
-        Assertions.assertEquals("camel-k", 
integration.getMetadata().getAnnotations().get(KubeCommand.OPERATOR_ID_LABEL));
+        Assertions.assertEquals("camel-k", 
integration.getMetadata().getAnnotations().get(CamelKCommand.OPERATOR_ID_LABEL));
     }
 
     @Test
     public void shouldPrintIntegration() {
-        CamelJBangMain.run(createMain(), "k", "run", "classpath:route.yaml", 
"-o", "yaml");
+        CamelJBangMain.run(createMain(), "k", "run", "classpath:route.yaml", 
"--output", "yaml");
 
         Assertions.assertEquals("""
                 apiVersion: camel.apache.org/v1
@@ -125,9 +125,8 @@ class KubeCommandMainTest extends KubeBaseTest {
         return new CamelJBangMain() {
             @Override
             public void quit(int exitCode) {
-                if (exitCode != 0) {
-                    Assertions.fail("Main finished with exit code 
%d".formatted(exitCode));
-                }
+                Assertions.assertEquals(0, exitCode,
+                        "Main finished with exit code 
%d:%n%s".formatted(exitCode, printer.getOutput()));
             }
         }.withPrinter(printer);
     }
diff --git 
a/dsl/camel-jbang/camel-jbang-plugin-k/src/test/java/org/apache/camel/dsl/jbang/core/commands/k/IntegrationDeleteTest.java
 
b/dsl/camel-jbang/camel-jbang-plugin-k/src/test/java/org/apache/camel/dsl/jbang/core/commands/k/IntegrationDeleteTest.java
index 2d4d8a8c1fa..4b0e38dfb54 100644
--- 
a/dsl/camel-jbang/camel-jbang-plugin-k/src/test/java/org/apache/camel/dsl/jbang/core/commands/k/IntegrationDeleteTest.java
+++ 
b/dsl/camel-jbang/camel-jbang-plugin-k/src/test/java/org/apache/camel/dsl/jbang/core/commands/k/IntegrationDeleteTest.java
@@ -23,7 +23,7 @@ import org.apache.camel.v1.Integration;
 import org.junit.jupiter.api.Assertions;
 import org.junit.jupiter.api.Test;
 
-class IntegrationDeleteTest extends KubeBaseTest {
+class IntegrationDeleteTest extends CamelKBaseTest {
 
     @Test
     public void shouldVerifyArguments() throws Exception {
diff --git 
a/dsl/camel-jbang/camel-jbang-plugin-k/src/test/java/org/apache/camel/dsl/jbang/core/commands/k/IntegrationGetTest.java
 
b/dsl/camel-jbang/camel-jbang-plugin-k/src/test/java/org/apache/camel/dsl/jbang/core/commands/k/IntegrationGetTest.java
index 5bdcbe72192..6e0e6519aed 100644
--- 
a/dsl/camel-jbang/camel-jbang-plugin-k/src/test/java/org/apache/camel/dsl/jbang/core/commands/k/IntegrationGetTest.java
+++ 
b/dsl/camel-jbang/camel-jbang-plugin-k/src/test/java/org/apache/camel/dsl/jbang/core/commands/k/IntegrationGetTest.java
@@ -28,7 +28,7 @@ import org.apache.camel.v1.integrationstatus.IntegrationKit;
 import org.junit.jupiter.api.Assertions;
 import org.junit.jupiter.api.Test;
 
-class IntegrationGetTest extends KubeBaseTest {
+class IntegrationGetTest extends CamelKBaseTest {
 
     @Test
     public void shouldListIntegrationsEmpty() throws Exception {
diff --git 
a/dsl/camel-jbang/camel-jbang-plugin-k/src/test/java/org/apache/camel/dsl/jbang/core/commands/k/IntegrationLogsTest.java
 
b/dsl/camel-jbang/camel-jbang-plugin-k/src/test/java/org/apache/camel/dsl/jbang/core/commands/k/IntegrationLogsTest.java
index 6474e2e3912..45ad315e6c3 100644
--- 
a/dsl/camel-jbang/camel-jbang-plugin-k/src/test/java/org/apache/camel/dsl/jbang/core/commands/k/IntegrationLogsTest.java
+++ 
b/dsl/camel-jbang/camel-jbang-plugin-k/src/test/java/org/apache/camel/dsl/jbang/core/commands/k/IntegrationLogsTest.java
@@ -26,7 +26,7 @@ import org.apache.camel.v1.Integration;
 import org.junit.jupiter.api.Assertions;
 import org.junit.jupiter.api.Test;
 
-class IntegrationLogsTest extends KubeBaseTest {
+class IntegrationLogsTest extends CamelKBaseTest {
 
     @Test
     public void shouldHandleIntegrationsNotFound() throws Exception {
@@ -45,7 +45,7 @@ class IntegrationLogsTest extends KubeBaseTest {
         Pod pod = new PodBuilder()
                 .withNewMetadata()
                 .withName(integration.getMetadata().getName())
-                
.withLabels(Collections.singletonMap(KubeCommand.INTEGRATION_LABEL, 
integration.getMetadata().getName()))
+                
.withLabels(Collections.singletonMap(CamelKCommand.INTEGRATION_LABEL, 
integration.getMetadata().getName()))
                 .endMetadata()
                 .withNewStatus()
                 .withPhase("Running")
diff --git 
a/dsl/camel-jbang/camel-jbang-plugin-k/src/test/java/org/apache/camel/dsl/jbang/core/commands/k/IntegrationRunTest.java
 
b/dsl/camel-jbang/camel-jbang-plugin-k/src/test/java/org/apache/camel/dsl/jbang/core/commands/k/IntegrationRunTest.java
index df2b8bfc1e9..1354ef8e03d 100644
--- 
a/dsl/camel-jbang/camel-jbang-plugin-k/src/test/java/org/apache/camel/dsl/jbang/core/commands/k/IntegrationRunTest.java
+++ 
b/dsl/camel-jbang/camel-jbang-plugin-k/src/test/java/org/apache/camel/dsl/jbang/core/commands/k/IntegrationRunTest.java
@@ -25,7 +25,7 @@ import org.apache.camel.v1.Integration;
 import org.junit.jupiter.api.Assertions;
 import org.junit.jupiter.api.Test;
 
-class IntegrationRunTest extends KubeBaseTest {
+class IntegrationRunTest extends CamelKBaseTest {
 
     @Test
     public void shouldHandleMissingSourceFile() throws Exception {
@@ -43,7 +43,7 @@ class IntegrationRunTest extends KubeBaseTest {
         Assertions.assertEquals("Integration route created", 
printer.getOutput());
 
         Integration created = 
kubernetesClient.resources(Integration.class).withName("route").get();
-        Assertions.assertEquals("camel-k", 
created.getMetadata().getAnnotations().get(KubeCommand.OPERATOR_ID_LABEL));
+        Assertions.assertEquals("camel-k", 
created.getMetadata().getAnnotations().get(CamelKCommand.OPERATOR_ID_LABEL));
     }
 
     @Test
@@ -58,7 +58,7 @@ class IntegrationRunTest extends KubeBaseTest {
         Assertions.assertEquals("Integration route updated", 
printer.getOutput());
 
         Integration created = 
kubernetesClient.resources(Integration.class).withName("route").get();
-        Assertions.assertEquals("camel-k", 
created.getMetadata().getAnnotations().get(KubeCommand.OPERATOR_ID_LABEL));
+        Assertions.assertEquals("camel-k", 
created.getMetadata().getAnnotations().get(CamelKCommand.OPERATOR_ID_LABEL));
     }
 
     @Test
diff --git 
a/dsl/camel-jbang/camel-jbang-plugin-kubernetes/src/test/java/org/apache/camel/dsl/jbang/core/commands/kubernetes/KubernetesBaseTest.java
 
b/dsl/camel-jbang/camel-jbang-plugin-kubernetes/src/test/java/org/apache/camel/dsl/jbang/core/commands/kubernetes/KubernetesBaseTest.java
index 3c853fb96a1..985450ca5f2 100644
--- 
a/dsl/camel-jbang/camel-jbang-plugin-kubernetes/src/test/java/org/apache/camel/dsl/jbang/core/commands/kubernetes/KubernetesBaseTest.java
+++ 
b/dsl/camel-jbang/camel-jbang-plugin-kubernetes/src/test/java/org/apache/camel/dsl/jbang/core/commands/kubernetes/KubernetesBaseTest.java
@@ -17,6 +17,9 @@
 
 package org.apache.camel.dsl.jbang.core.commands.kubernetes;
 
+import java.io.ByteArrayInputStream;
+import java.io.InputStream;
+import java.nio.charset.StandardCharsets;
 import java.util.HashMap;
 
 import io.fabric8.kubernetes.client.KubernetesClient;
@@ -28,6 +31,7 @@ import 
org.apache.camel.dsl.jbang.core.common.CommandLineHelper;
 import org.apache.camel.dsl.jbang.core.common.PluginHelper;
 import org.apache.camel.dsl.jbang.core.common.PluginType;
 import org.apache.camel.dsl.jbang.core.common.StringPrinter;
+import org.apache.camel.util.StringHelper;
 import org.junit.jupiter.api.AfterAll;
 import org.junit.jupiter.api.BeforeAll;
 import org.junit.jupiter.api.BeforeEach;
@@ -65,4 +69,8 @@ public class KubernetesBaseTest {
         k8sServer.destroy();
     }
 
+    protected InputStream getKubernetesManifestAsStream(String printerOutput) {
+        return new ByteArrayInputStream(StringHelper.after(printerOutput, 
"---").getBytes(StandardCharsets.UTF_8));
+    }
+
 }
diff --git 
a/dsl/camel-jbang/camel-jbang-plugin-kubernetes/src/test/java/org/apache/camel/dsl/jbang/core/commands/kubernetes/KubernetesCommandTest.java
 
b/dsl/camel-jbang/camel-jbang-plugin-kubernetes/src/test/java/org/apache/camel/dsl/jbang/core/commands/kubernetes/KubernetesCommandTest.java
new file mode 100644
index 00000000000..5a9e6272566
--- /dev/null
+++ 
b/dsl/camel-jbang/camel-jbang-plugin-kubernetes/src/test/java/org/apache/camel/dsl/jbang/core/commands/kubernetes/KubernetesCommandTest.java
@@ -0,0 +1,35 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.camel.dsl.jbang.core.commands.kubernetes;
+
+import org.apache.camel.impl.engine.DefaultClassResolver;
+import org.apache.camel.impl.engine.DefaultFactoryFinder;
+import org.apache.camel.spi.FactoryFinder;
+import org.junit.jupiter.api.Assertions;
+import org.junit.jupiter.api.Test;
+
+class KubernetesCommandTest extends KubernetesBaseTest {
+
+    @Test
+    public void shouldResolvePlugin() {
+        FactoryFinder factoryFinder
+                = new DefaultFactoryFinder(new DefaultClassResolver(), 
FactoryFinder.DEFAULT_PATH + "camel-jbang-plugin/");
+        
Assertions.assertTrue(factoryFinder.newInstance("camel-jbang-plugin-kubernetes").isPresent());
+    }
+
+}
diff --git 
a/dsl/camel-jbang/camel-jbang-plugin-kubernetes/src/test/java/org/apache/camel/dsl/jbang/core/commands/kubernetes/KubernetesRunTest.java
 
b/dsl/camel-jbang/camel-jbang-plugin-kubernetes/src/test/java/org/apache/camel/dsl/jbang/core/commands/kubernetes/KubernetesRunTest.java
index fa04a8d9e98..7c11a205ffd 100644
--- 
a/dsl/camel-jbang/camel-jbang-plugin-kubernetes/src/test/java/org/apache/camel/dsl/jbang/core/commands/kubernetes/KubernetesRunTest.java
+++ 
b/dsl/camel-jbang/camel-jbang-plugin-kubernetes/src/test/java/org/apache/camel/dsl/jbang/core/commands/kubernetes/KubernetesRunTest.java
@@ -17,9 +17,6 @@
 
 package org.apache.camel.dsl.jbang.core.commands.kubernetes;
 
-import java.io.ByteArrayInputStream;
-import java.io.InputStream;
-import java.nio.charset.StandardCharsets;
 import java.util.List;
 
 import io.fabric8.kubernetes.api.model.HasMetadata;
@@ -28,7 +25,6 @@ import org.apache.camel.RuntimeCamelException;
 import org.apache.camel.dsl.jbang.core.commands.CamelJBangMain;
 import org.apache.camel.dsl.jbang.core.commands.kubernetes.traits.BaseTrait;
 import org.apache.camel.dsl.jbang.core.common.StringPrinter;
-import org.apache.camel.util.StringHelper;
 import org.junit.jupiter.api.Assertions;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
@@ -101,7 +97,4 @@ class KubernetesRunTest extends KubernetesBaseTest {
         return command;
     }
 
-    private InputStream getKubernetesManifestAsStream(String printerOutput) {
-        return new ByteArrayInputStream(StringHelper.after(printerOutput, 
"---").getBytes(StandardCharsets.UTF_8));
-    }
 }


Reply via email to