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 4c32d44abf982c27e54928f310ab5af0fef3e84d Author: Pasquale Congiusti <[email protected]> AuthorDate: Fri Jul 14 09:27:20 2023 +0200 chore(doc): runtime and quarkus --- docs/modules/ROOT/nav.adoc | 2 ++ .../modules/ROOT/pages/architecture/cr/camel-catalog.adoc | 6 +++++- docs/modules/ROOT/pages/running/quarkus-native.adoc | 7 +++++++ docs/modules/ROOT/pages/running/runtime-version.adoc | 15 +++++++++++++++ docs/modules/traits/pages/quarkus.adoc | 4 +--- 5 files changed, 30 insertions(+), 4 deletions(-) diff --git a/docs/modules/ROOT/nav.adoc b/docs/modules/ROOT/nav.adoc index 45612ecb1..990e11d91 100644 --- a/docs/modules/ROOT/nav.adoc +++ b/docs/modules/ROOT/nav.adoc @@ -31,6 +31,8 @@ ** xref:cli/modeline.adoc[Modeline] * xref:running/running.adoc[Run an Integration] ** xref:running/dev-mode.adoc[Developer mode] +** xref:running/runtime-version.adoc[Camel version] +** xref:running/quarkus-native.adoc[Quarkus Native] ** xref:running/run-from-github.adoc[Run from GitHub] ** xref:running/promoting.adoc[Promote an Integration] ** xref:running/knative-sink.adoc[Knative Sinks] diff --git a/docs/modules/ROOT/pages/architecture/cr/camel-catalog.adoc b/docs/modules/ROOT/pages/architecture/cr/camel-catalog.adoc index ca59c77a1..f301dc6e0 100644 --- a/docs/modules/ROOT/pages/architecture/cr/camel-catalog.adoc +++ b/docs/modules/ROOT/pages/architecture/cr/camel-catalog.adoc @@ -1,7 +1,11 @@ [[camel-catalog]] = CamelCatalog -The *CamelCatalog* is a static side resource that provides metadata related to what is included in the xref:architecture/runtime.adoc[Runtime] in term of Camel components, languages, dataformats and capabilities provided. +The *CamelCatalog* is a resource that provides metadata related to what is included in the xref:architecture/runtime.adoc[Runtime] in term of Camel components, languages, dataformats and capabilities provided. + +Starting from Camel K version 2, it is a dynamic resource which is reconciled and produces as an output a container image required to build the Camel application when using the builder `Pod` strategy. This container image contains all the toolings which will build the artifacts, above all the Quarkus tools required to compile natively. + +NOTE: each catalog generates a different builder image starting from Camel K runtime version 1.17. You cannot run a Camel K runtime < 1.17 with Camel K version 2. [NOTE] ==== diff --git a/docs/modules/ROOT/pages/running/quarkus-native.adoc b/docs/modules/ROOT/pages/running/quarkus-native.adoc new file mode 100644 index 000000000..59a61546e --- /dev/null +++ b/docs/modules/ROOT/pages/running/quarkus-native.adoc @@ -0,0 +1,7 @@ += Run Quarkus native applications + +The default Camel runtime used by Camel K is Camel Quarkus (via Camel K Runtime dependency). This is a great choice for cloud development and by default we use the JVM mode which provides already enough optimization which makes Camel applications, first class Cloud Native applications. + +Quarkus (and Camel Quarkus) offers also the possibility to perform a build ahead of time (AOT) and have even further optimization, making your Camel application a native executable with very low footprint and immediate startup. This is known as Native mode and we can configure such behavior using the xref:traits:quarkus.adoc[Quarkus trait]. + +See the examples provided in xref:traits:quarkus.adoc#_automatic_rollout_deployment_to_native_integration[Quarkus trait] documentation page to learn how to use the feature. \ No newline at end of file diff --git a/docs/modules/ROOT/pages/running/runtime-version.adoc b/docs/modules/ROOT/pages/running/runtime-version.adoc new file mode 100644 index 000000000..71f7f5542 --- /dev/null +++ b/docs/modules/ROOT/pages/running/runtime-version.adoc @@ -0,0 +1,15 @@ += Choose the runtime version + +Starting from Camel K version 2 you will be able to use any Camel K Runtime version available which version is above 1.17. In order to use the feature you need to use the xref:traits:camel.adoc[Camel trait]. + +The `runtime-version` property is quite straightforward to use: + +``` +kamel run my-route.yaml -t camel.runtime-version=1.17.0 +``` + +Having the ability to choose the runtime, gives you the ability to specify which Camel version you want to run. Each Camel K Runtime is bound to a well defined version of Camel (see the compatibility matrix). + +== Pin a runtime version + +By default each Camel K version uses a specific runtime version, ie, Camel K 2.0 uses Camel K Runtime 2.16.0. Using the trait will let you pin to a well defined version, avoiding to unintentionally upgrade the runtime of the integrations running when you perform an operator upgrade. See more info in the xref:contributing/upgrade.adoc##maintain-runtime-integrations[Camel K upgrade documentation]. \ No newline at end of file diff --git a/docs/modules/traits/pages/quarkus.adoc b/docs/modules/traits/pages/quarkus.adoc index b03444c8b..a79b746ec 100755 --- a/docs/modules/traits/pages/quarkus.adoc +++ b/docs/modules/traits/pages/quarkus.adoc @@ -5,9 +5,7 @@ The Quarkus trait configures the Quarkus runtime. It's enabled by default. -NOTE: Compiling to a native executable, i.e. when using `package-type=native`, requires at least -4GiB of memory, so the Pod running the native build, that is either the operator Pod, or the build -Pod (depending on the build strategy configured for the platform), must have enough memory available. +NOTE: Compiling to a native build, i.e. when using `package-type=native` will always trigger a builder `Pod` strategy, performing the build in a Pod. There is a set of sensible resource configuration which can be adjusted using xref:traits:builder.adoc[Builder trait]. This trait is available in the following profiles: **Kubernetes, Knative, OpenShift**.
