You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by pc...@apache.org on 2021/08/19 08:07:22 UTC
[camel-k] 01/02: doc(kamelets): trait annotation
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 1f0431ec9c6ebfad58ac532cb34986802f62bf2e
Author: Pasquale Congiusti <pa...@gmail.com>
AuthorDate: Wed Aug 18 12:45:27 2021 +0200
doc(kamelets): trait annotation
Closes #2500
---
.../modules/ROOT/pages/kamelets/kamelets-user.adoc | 28 +++++++++++++++++++++
examples/kamelets/kameletbindings/README.md | 3 +++
.../kameletbindings/kb-trait-annotation.yaml | 29 ++++++++++++++++++++++
3 files changed, 60 insertions(+)
diff --git a/docs/modules/ROOT/pages/kamelets/kamelets-user.adoc b/docs/modules/ROOT/pages/kamelets/kamelets-user.adoc
index 6e42174..500b039 100644
--- a/docs/modules/ROOT/pages/kamelets/kamelets-user.adoc
+++ b/docs/modules/ROOT/pages/kamelets/kamelets-user.adoc
@@ -360,6 +360,29 @@ To comply with the Knative specifications, in case an "http" or "https" URI is u
You can configure an error handler in order to specify what to do when some event ends up with failure. See xref:kamelets/kameletbindings-error-handler.adoc[Kamelet Bindings Error Handler User Guide] for more detail.
+=== Trait via annotations
+
+You can easily tune your `KameletBinding` with xref:traits:traits.adoc[traits] configuration adding `.metadata.annotations`. Let's have a look at the following example:
+
+[source,yaml]
+----
+apiVersion: camel.apache.org/v1alpha1
+kind: KameletBinding
+metadata:
+ name: timer-2-log-annotation
+ annotations: # <1>
+ trait.camel.apache.org/logging.level: DEBUG
+ trait.camel.apache.org/logging.color: "false"
+spec:
+ source:
+ uri: timer:foo
+ sink:
+ uri: log:bar
+----
+<1> Include `.metadata.annotations` to specify the list of traits we want to configure
+
+In this example, we've set the `logging` trait to specify certain configuration we want to apply. You can do the same with all the traits available, just by setting `trait.camel.apache.org/trait-name.trait-property` with the expected value.
+
[[kamelets-troubleshooting]]
== Troubleshooting
@@ -400,6 +423,11 @@ The following annotations and labels are also defined on the resource:
|An optional icon for the Kamelet in URI data format
|`string`
|E.g. `data:image/svg+xml;base64,PD94bW...`
+
+|`trait.camel.apache.org/trait-name.trait-property`
+|An optional configuration setting for a trait
+|`string`
+|E.g. `trait.camel.apache.org/logging.level: DEBUG`
|===
.Labels
diff --git a/examples/kamelets/kameletbindings/README.md b/examples/kamelets/kameletbindings/README.md
new file mode 100644
index 0000000..9e2ba04
--- /dev/null
+++ b/examples/kamelets/kameletbindings/README.md
@@ -0,0 +1,3 @@
+# KameletBindings examples
+
+Find useful examples about how to use KameletBindings.
diff --git a/examples/kamelets/kameletbindings/kb-trait-annotation.yaml b/examples/kamelets/kameletbindings/kb-trait-annotation.yaml
new file mode 100644
index 0000000..73a5d6a
--- /dev/null
+++ b/examples/kamelets/kameletbindings/kb-trait-annotation.yaml
@@ -0,0 +1,29 @@
+# ---------------------------------------------------------------------------
+# 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.
+# ---------------------------------------------------------------------------
+
+apiVersion: camel.apache.org/v1alpha1
+kind: KameletBinding
+metadata:
+ name: timer-2-log-annotation
+ annotations:
+ trait.camel.apache.org/logging.level: DEBUG
+ trait.camel.apache.org/logging.color: "false"
+spec:
+ source:
+ uri: timer:foo
+ sink:
+ uri: log:bar
\ No newline at end of file