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 <anco...@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]

Reply via email to