You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by ac...@apache.org on 2020/07/30 16:24:33 UTC

[camel] branch master updated (489b837 -> b01f79a)

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

acosentino pushed a change to branch master
in repository https://gitbox.apache.org/repos/asf/camel.git.


    from 489b837  CAMEL-15355: camel-rabbitmq fix arg.queue.x-single-active-consumer to be configured as boolean type for RabbitMQ to make it work. Thanks to Devansh Arora for reporting and suggested fix.
     new 7e16bf0  Upgrade Qpid JMS client to version 0.53.0
     new 4d9a728  Sync Properties and regen catalog
     new b01f79a  CAMEL-15359 - Added docs for Opentelemetry

The 3 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 camel-dependencies/pom.xml                         |   2 +-
 .../org/apache/camel/catalog/docs.properties       |   1 +
 .../camel/catalog/docs/arangodb-component.adoc     |   2 +
 .../camel/catalog/docs/aws2-sqs-component.adoc     |  17 +++-
 .../catalog/docs/kubernetes-job-component.adoc     | 111 +++++++++++++++++++++
 .../apache/camel/catalog/docs/opentelemetry.adoc   |  15 +++
 .../src/main/docs/opentelemetry.adoc               |  15 +++
 docs/components/modules/others/nav.adoc            |   1 +
 .../modules/others/pages/opentelemetry.adoc        |  17 ++++
 parent/pom.xml                                     |   2 +-
 10 files changed, 178 insertions(+), 5 deletions(-)
 create mode 100644 catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/opentelemetry.adoc
 create mode 100644 components/camel-opentelemetry/src/main/docs/opentelemetry.adoc
 create mode 100644 docs/components/modules/others/pages/opentelemetry.adoc


[camel] 01/03: Upgrade Qpid JMS client to version 0.53.0

Posted by ac...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

acosentino pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/camel.git

commit 7e16bf04c7af359ab198e31f0c75fc22a3cd064f
Author: Andrea Cosentino <an...@gmail.com>
AuthorDate: Thu Jul 30 17:47:39 2020 +0200

    Upgrade Qpid JMS client to version 0.53.0
---
 parent/pom.xml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/parent/pom.xml b/parent/pom.xml
index 33d960b..38e2eb4 100644
--- a/parent/pom.xml
+++ b/parent/pom.xml
@@ -466,7 +466,7 @@
         <pulsar-version>2.6.0</pulsar-version>
         <qpid-broker-version>8.0.0</qpid-broker-version>
         <qpid-proton-j-version>0.33.5</qpid-proton-j-version>
-        <qpid-jms-client-version>0.52.0</qpid-jms-client-version>
+        <qpid-jms-client-version>0.53.0</qpid-jms-client-version>
         <quartz-version>2.3.2</quartz-version>
         <quickfixj-version>2.2.0</quickfixj-version>
         <rabbitmq-amqp-client-version>5.9.0</rabbitmq-amqp-client-version>


[camel] 02/03: Sync Properties and regen catalog

Posted by ac...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

acosentino pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/camel.git

commit 4d9a728deee890904a9b76bb551e6f58fce0a881
Author: Andrea Cosentino <an...@gmail.com>
AuthorDate: Thu Jul 30 18:23:13 2020 +0200

    Sync Properties and regen catalog
---
 camel-dependencies/pom.xml                         |   2 +-
 .../org/apache/camel/catalog/docs.properties       |   1 +
 .../camel/catalog/docs/arangodb-component.adoc     |   2 +
 .../camel/catalog/docs/aws2-sqs-component.adoc     |  17 +++-
 .../catalog/docs/kubernetes-job-component.adoc     | 111 +++++++++++++++++++++
 docs/components/modules/others/nav.adoc            |   1 +
 6 files changed, 130 insertions(+), 4 deletions(-)

diff --git a/camel-dependencies/pom.xml b/camel-dependencies/pom.xml
index 66adfea..832e592 100644
--- a/camel-dependencies/pom.xml
+++ b/camel-dependencies/pom.xml
@@ -479,7 +479,7 @@
     <pubnub-version>4.25.0</pubnub-version>
     <pulsar-version>2.6.0</pulsar-version>
     <qpid-broker-version>8.0.0</qpid-broker-version>
-    <qpid-jms-client-version>0.52.0</qpid-jms-client-version>
+    <qpid-jms-client-version>0.53.0</qpid-jms-client-version>
     <qpid-proton-j-version>0.33.5</qpid-proton-j-version>
     <quartz-version>2.3.2</quartz-version>
     <quickfixj-version>2.2.0</quickfixj-version>
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs.properties b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs.properties
index 4d80a22..a866c73 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs.properties
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs.properties
@@ -361,6 +361,7 @@ openstack-neutron-component
 openstack-nova-component
 openstack-summary
 openstack-swift-component
+opentelemetry
 opentracing
 optaplanner-component
 otherwise-eip
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/arangodb-component.adoc b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/arangodb-component.adoc
index 9b0be1a..d883a0d 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/arangodb-component.adoc
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/arangodb-component.adoc
@@ -93,3 +93,5 @@ with the following path and query parameters:
 | *user* (security) | user if user and/or password different from default |  | String
 |===
 // endpoint options: END
+
+include::camel-spring-boot::page$arangodb-starter.adoc[]
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/aws2-sqs-component.adoc b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/aws2-sqs-component.adoc
index 40693c5..19b69b7 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/aws2-sqs-component.adoc
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/aws2-sqs-component.adoc
@@ -351,7 +351,7 @@ from("direct:start")
   .to("aws2-sqs://camel-1?accessKey=RAW(xxx)&secretKey=RAW(xxx)&region=EU_WEST_1");
 ------------------------------------------------------------------------------------------------------
 
-As result you'll get an exchange containing a `SendMessageBatchResult` instance, that you can examinate to check what messages were successfull and what not.
+As result you'll get an exchange containing a `SendMessageBatchResponse` instance, that you can examinate to check what messages were successfull and what not.
 The id set on each message of the batch will be a Random UUID.
 
 == Delete single Message
@@ -365,7 +365,7 @@ from("direct:start")
   .to("aws2-sqs://camel-1?accessKey=RAW(xxx)&secretKey=RAW(xxx)&region=EU_WEST_1");
 ------------------------------------------------------------------------------------------------------
 
-As result you'll get an exchange containing a `DeleteMessageResult` instance, that you can use to check if the message was deleted or not.
+As result you'll get an exchange containing a `DeleteMessageResponse` instance, that you can use to check if the message was deleted or not.
 
 == List Queues
 
@@ -376,7 +376,18 @@ from("direct:start")
   .setHeader(SqsConstants.SQS_OPERATION, constant("listQueues")).to("aws2-sqs://camel-1?accessKey=RAW(xxx)&secretKey=RAW(xxx)&region=EU_WEST_1");
 ------------------------------------------------------------------------------------------------------
 
-As result you'll get an exchange containing a `ListQueuesResult` instance, that you can examinate to check the actual queues.
+As result you'll get an exchange containing a `ListQueuesResponse` instance, that you can examinate to check the actual queues.
+
+== Purge Queue
+
+Use purgeQueue operation to purge queue.
+
+------------------------------------------------------------------------------------------------------
+from("direct:start")
+  .setHeader(SqsConstants.SQS_OPERATION, constant("purgeQueue")).to("aws2-sqs://camel-1?accessKey=RAW(xxx)&secretKey=RAW(xxx)&region=EU_WEST_1");
+------------------------------------------------------------------------------------------------------
+
+As result you'll get an exchange containing a `PurgeQueueResponse` instance.
 
 == Queue Autocreation
 
diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/kubernetes-job-component.adoc b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/kubernetes-job-component.adoc
index b2f6b90..bb3aa85 100644
--- a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/kubernetes-job-component.adoc
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/kubernetes-job-component.adoc
@@ -136,5 +136,116 @@ from("direct:listByLabels").process(new Processor() {
 
 This operation return a List of Jobs from your cluster, using a label selector (with key1 and key2, with value value1 and value2)
 
+- createJob: This operation create a job on a Kubernetes Cluster
+
+We have a wonderful example of this operation thanks to https://github.com/Emmerson-Miranda[Emmerson Miranda] from this https://github.com/Emmerson-Miranda/camel/blob/master/camel3-cdi/cdi-k8s-pocs/src/main/java/edu/emmerson/camel/k8s/jobs/camel_k8s_jobs/KubernetesCreateJob.java[Java test]
+
+[source,java]
+--------------------------------------------------------------------------------
+import java.util.ArrayList;
+import java.util.Date;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+import javax.inject.Inject;
+
+import org.apache.camel.Endpoint;
+import org.apache.camel.builder.RouteBuilder;
+import org.apache.camel.cdi.Uri;
+import org.apache.camel.component.kubernetes.KubernetesConstants;
+import org.apache.camel.component.kubernetes.KubernetesOperations;
+
+import io.fabric8.kubernetes.api.model.Container;
+import io.fabric8.kubernetes.api.model.ObjectMeta;
+import io.fabric8.kubernetes.api.model.PodSpec;
+import io.fabric8.kubernetes.api.model.PodTemplateSpec;
+import io.fabric8.kubernetes.api.model.batch.JobSpec;
+
+/**
+ * 
+ */
+public class KubernetesCreateJob extends RouteBuilder {
+
+    @Inject
+    @Uri("timer:foo?delay=1000&repeatCount=1")
+    private Endpoint inputEndpoint;
+
+    @Inject
+    @Uri("log:output")
+    private Endpoint resultEndpoint;
+
+    @Override
+    public void configure() {
+        // you can configure the route rule with Java DSL here
+
+        from(inputEndpoint)
+        	.routeId("kubernetes-jobcreate-client")
+        	.process(exchange -> {
+        		exchange.getIn().setHeader(KubernetesConstants.KUBERNETES_JOB_NAME, "camel-job"); //DNS-1123 subdomain must consist of lower case alphanumeric characters, '-' or '.', and must start and end with an alphanumeric character (e.g. 'example.com', regex used for validation is '[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*')
+                exchange.getIn().setHeader(KubernetesConstants.KUBERNETES_NAMESPACE_NAME, "default");
+                
+                Map<String, String> joblabels = new HashMap<String, String>();
+                joblabels.put("jobLabelKey1", "value1");
+                joblabels.put("jobLabelKey2", "value2");
+                joblabels.put("app", "jobFromCamelApp");
+                exchange.getIn().setHeader(KubernetesConstants.KUBERNETES_JOB_LABELS, joblabels);
+
+                exchange.getIn().setHeader(KubernetesConstants.KUBERNETES_JOB_SPEC, generateJobSpec());
+        	})
+        	.toF("kubernetes-job:///{{kubernetes-master-url}}?oauthToken={{kubernetes-oauth-token:}}&operation=" + KubernetesOperations.CREATE_JOB_OPERATION)
+        	.log("Job created:")
+        	.process(exchange -> {
+        		System.out.println(exchange.getIn().getBody());
+        	})
+            .to(resultEndpoint);
+    }
+
+    /**
+     * Create a new JobSpec
+     * @return
+     */
+	private JobSpec generateJobSpec() {
+		JobSpec js = new JobSpec();
+		
+		PodTemplateSpec pts = new PodTemplateSpec();
+		
+		PodSpec ps = new PodSpec();
+		ps.setRestartPolicy("Never");
+		ps.setContainers(generateContainers());
+		pts.setSpec(ps);
+		
+		ObjectMeta metadata = new ObjectMeta();
+		Map<String, String> annotations = new HashMap<String, String>();
+		annotations.put("jobMetadataAnnotation1", "random value");
+		metadata.setAnnotations(annotations);
+		
+		Map<String, String> podlabels = new HashMap<String, String>();
+		podlabels.put("podLabelKey1", "value1");
+		podlabels.put("podLabelKey2", "value2");
+		podlabels.put("app", "podFromCamelApp");
+		metadata.setLabels(podlabels);
+		
+		pts.setMetadata(metadata);
+		js.setTemplate(pts);
+		return js;
+	}
+
+	private List<Container> generateContainers() {
+		Container container = new Container();
+		container.setName("pi");
+		container.setImage("perl");
+		List<String> command = new ArrayList<String>();
+		command.add("echo");
+		command.add("Job created from Apache Camel code at " + (new Date()));
+		container.setCommand(command);
+		List<Container> containers = new ArrayList<Container>();
+		containers.add(container);
+		return containers;
+	}
+
+}
+--------------------------------------------------------------------------------
+
 
 include::camel-spring-boot::page$kubernetes-starter.adoc[]
diff --git a/docs/components/modules/others/nav.adoc b/docs/components/modules/others/nav.adoc
index bc6c853..ac4d49b 100644
--- a/docs/components/modules/others/nav.adoc
+++ b/docs/components/modules/others/nav.adoc
@@ -17,6 +17,7 @@
 ** xref:microprofile-fault-tolerance.adoc[Microprofile Fault Tolerance]
 ** xref:microprofile-health.adoc[Microprofile Health]
 ** xref:openapi-java.adoc[Openapi Java]
+** xref:opentelemetry.adoc[OpenTelemetry]
 ** xref:opentracing.adoc[OpenTracing]
 ** xref:platform-http-vertx.adoc[Platform Http Vertx]
 ** xref:reactive-executor-vertx.adoc[Reactive Executor Vert.x]


[camel] 03/03: CAMEL-15359 - Added docs for Opentelemetry

Posted by ac...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

acosentino pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/camel.git

commit b01f79aee7c844226c6eb9e1c6df16398a3f1c54
Author: Andrea Cosentino <an...@gmail.com>
AuthorDate: Thu Jul 30 18:23:48 2020 +0200

    CAMEL-15359 - Added docs for Opentelemetry
---
 .../org/apache/camel/catalog/docs/opentelemetry.adoc    | 15 +++++++++++++++
 .../src/main/docs/opentelemetry.adoc                    | 15 +++++++++++++++
 docs/components/modules/others/pages/opentelemetry.adoc | 17 +++++++++++++++++
 3 files changed, 47 insertions(+)

diff --git a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/opentelemetry.adoc b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/opentelemetry.adoc
new file mode 100644
index 0000000..22ebed0
--- /dev/null
+++ b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/opentelemetry.adoc
@@ -0,0 +1,15 @@
+[[opentelemetry-component]]
+= OpenTelemetry Component
+:docTitle: OpenTelemetry
+:artifactId: camel-opentelemetry
+:description: Distributed tracing using OpenTelemetry
+:since: 3.5
+:supportLevel: Preview
+
+*Since Camel {since}*
+
+The OpenTelemetry component is used for tracing and timing incoming and
+outgoing Camel messages using https://opentelemetry.io/[OpenTelemetry].
+
+Events (spans) are captured for incoming and outgoing messages being sent
+to/from Camel.
diff --git a/components/camel-opentelemetry/src/main/docs/opentelemetry.adoc b/components/camel-opentelemetry/src/main/docs/opentelemetry.adoc
new file mode 100644
index 0000000..22ebed0
--- /dev/null
+++ b/components/camel-opentelemetry/src/main/docs/opentelemetry.adoc
@@ -0,0 +1,15 @@
+[[opentelemetry-component]]
+= OpenTelemetry Component
+:docTitle: OpenTelemetry
+:artifactId: camel-opentelemetry
+:description: Distributed tracing using OpenTelemetry
+:since: 3.5
+:supportLevel: Preview
+
+*Since Camel {since}*
+
+The OpenTelemetry component is used for tracing and timing incoming and
+outgoing Camel messages using https://opentelemetry.io/[OpenTelemetry].
+
+Events (spans) are captured for incoming and outgoing messages being sent
+to/from Camel.
diff --git a/docs/components/modules/others/pages/opentelemetry.adoc b/docs/components/modules/others/pages/opentelemetry.adoc
new file mode 100644
index 0000000..200f406
--- /dev/null
+++ b/docs/components/modules/others/pages/opentelemetry.adoc
@@ -0,0 +1,17 @@
+[[opentelemetry-component]]
+= OpenTelemetry Component
+//THIS FILE IS COPIED: EDIT THE SOURCE FILE:
+:page-source: components/camel-opentelemetry/src/main/docs/opentelemetry.adoc
+:docTitle: OpenTelemetry
+:artifactId: camel-opentelemetry
+:description: Distributed tracing using OpenTelemetry
+:since: 3.5
+:supportLevel: Preview
+
+*Since Camel {since}*
+
+The OpenTelemetry component is used for tracing and timing incoming and
+outgoing Camel messages using https://opentelemetry.io/[OpenTelemetry].
+
+Events (spans) are captured for incoming and outgoing messages being sent
+to/from Camel.