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

pcongiusti pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/camel-k.git

commit 02891fe96eda7e85e4b6225baa3a48388a5fcfb1
Author: Pasquale Congiusti <pasquale.congiu...@gmail.com>
AuthorDate: Sat Jan 11 09:28:41 2025 +0100

    chore(doc): plain quarkus runtime provider
    
    Closes #5999
---
 docs/modules/ROOT/pages/architecture/runtime.adoc | 21 ++++++++----------
 docs/modules/ROOT/pages/running/running.adoc      | 26 +++++++++++++++++++++++
 2 files changed, 35 insertions(+), 12 deletions(-)

diff --git a/docs/modules/ROOT/pages/architecture/runtime.adoc 
b/docs/modules/ROOT/pages/architecture/runtime.adoc
index 133d952ce..34c3ff020 100644
--- a/docs/modules/ROOT/pages/architecture/runtime.adoc
+++ b/docs/modules/ROOT/pages/architecture/runtime.adoc
@@ -5,8 +5,6 @@ image::architecture/camel-k-runtimes.jpg[runtimes, width=1024]
 
 Camel runtime application is in charge to bridge the output produced by the 
operator during a `Build` to the Camel runtime. It will finally execute an 
application containing the `Route` as defined by `Camel K` user. It will take 
care of converting all the different configuration and tuning into something 
meaningful to `Apache Camel` framework. We use a java application, 
`camel-k-runtime` which is based on `camel-quarkus` to achieve the goal.
 
-NOTE: This document reflects Camel K version 1.6. It may not reflect slight 
changes developed after this review.
-
 [[runtime-quarkus]]
 == Based on Camel Quarkus
 
@@ -19,16 +17,15 @@ Learn more in the xref:camel-quarkus::index.adoc[Camel 
Quarkus documentation sec
 [[runtime-duties]]
 == Runtime main duties
 
-The main goal of the Camel-k-runtime is to launch a Camel Quarkus application 
and setup the routes configured by the Camel K user. When a user run a new 
`Integration`, the xref:architecture/operator.adoc[`Operator`] will take care 
of building an application containing the `camel-k-runtime dependency`. During 
application startup, the camel-k-runtime will be in charge to take care of the 
following aspects:
+The main goal of the Camel-k-runtime is to launch a Camel Quarkus application 
and setup the routes configured by the Camel K user. When a user run a new 
`Integration`, the xref:architecture/operator.adoc[`Operator`] will take care 
of building an application basing it on Camel K Runtime dependency.
+
+[[plain-quarkus]]
+== Plain Camel Quarkus runtime
 
-* Sources loading
-* Properties setting
-* Cron
-* Knative
-* Kamelet
-* Master
-* Webhook
+More recently we are working to make it easier and run a Camel Quarkus 
application out of the box instead. You're strongly recommended to use the 
`plain-quarkus` Camel trait runtime provider for any Integration you're 
running. You can do this following the example:
 
-Basically the application will apply the configuration/customizations needed 
to run your application on Camel, transforming those configuration coming from 
the `Integration` spec into something meaningful to Camel framework.
+```shell
+kamel run test.yaml -t camel.runtime-provider=plain-quarkus
+```
 
-NOTE: Camel-k-runtime is a very fast evolving project. You may find more 
relevant details accessing directly to the 
https://github.com/apache/camel-k-runtime[application source code].
+NOTE: we plan to graduate plain Camel Quarkus runtime as default runtime in 
the future (likely in the next major release).
\ No newline at end of file
diff --git a/docs/modules/ROOT/pages/running/running.adoc 
b/docs/modules/ROOT/pages/running/running.adoc
index fea5e083b..bf6462856 100644
--- a/docs/modules/ROOT/pages/running/running.adoc
+++ b/docs/modules/ROOT/pages/running/running.adoc
@@ -92,6 +92,32 @@ spec:
 
 You can see the specification is a lot neater, so, try choosing Yaml DSL 
whenever it's possible.
 
+== Runtime provider
+
+Camel K was originally equipped with a dedicated runtime known as Camel K 
Runtime. This is a lightweight layer on top of Camel Quarkus. However, you can 
directly run plain regular Camel Quarkus runtime applications as well. You will 
learn the concept of traits later on. For now, just be aware that you can run 
any Integration setting the plain Quarkus runtime using `camel` trait 
configuration. Here an example of how that would be:
+
+```yaml
+apiVersion: camel.apache.org/v1
+kind: Integration
+metadata:
+  name: my-plain-quarkus-it
+spec:
+  flows:
+  - from:
+      parameters:
+        period: "1000"
+      steps:
+      - setBody:
+          simple: Hello Camel from ${routeId}
+      - log: ${body}
+      uri: timer:yaml
+  traits:
+    camel:
+      runtimeProvider: plain-quarkus
+```
+
+NOTE: we plan to graduate plain Camel Quarkus runtime as default runtime in 
the future (likely in the next major release). We therefore recommend to use 
the plain Camel Quarkus runtime in any of your Integrations already.
+
 == Using Kamel CLI
 
 Camel K works very well with any Kubernetes compatible user interface (such as 
CLI as `kubectl`, `oc` or any other visual tooling). However we do provide a 
simple CLI that helps you performing most of the Integration works in an easier 
fashion: it's xref:running/running-cli.adoc[`kamel` CLI].

Reply via email to