spring-rabbitmq-sink/kamelet.yaml

94 lines
3.8 KiB
YAML
Raw Normal View History

apiVersion: camel.apache.org/v1
kind: Kamelet
metadata:
name: spring-rabbitmq-sink
annotations:
camel.apache.org/kamelet.support.level: "Preview"
camel.apache.org/catalog.version: "4.10.2"
camel.apache.org/kamelet.icon: "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjcxcHgiIGhlaWdodD0iMjcxcHgiIHZpZXdCb3g9Ii03LjUgMCAyNzEgMjcxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHByZXNlcnZlQXNwZWN0UmF0aW89InhNaWRZTWlkIj48cGF0aCBkPSJNMjQ1LjQ0IDEwOC4zMDhoLTg1LjA5YTcuNzM4IDcuNzM4IDAgMCAxLTcuNzM1LTcuNzM0di04OC42OEMxNTIuNjE1IDUuMzI3IDE0Ny4yOSAwIDE0MC43MjYgMGgtMzAuMzc1Yy02LjU2OCAwLTExLjg5IDUuMzI3LTExLjg5IDExLjg5NHY4OC4xNDNjMCA0LjU3My0zLjY5NyA4LjI5LTguMjcgOC4zMWwtMjcuODg1LjEzM2MtNC42MTIuMDI1LTguMzU5LTMuNzE3LTguMzUtOC4zMjVsLjE3My04OC4yNDFDNTQuMTQ0IDUuMzM3IDQ4LjgxNyAwIDQyLjI0IDBIMTEuODlDNS4zMjEgMCAwIDUuMzI3IDAgMTEuODk0VjI2MC4yMWMwIDUuODM0IDQuNzI2IDEwLjU2IDEwLjU1NSAxMC41NkgyNDUuNDRjNS44MzQgMCAxMC41Ni00LjcyNiAxMC41Ni0xMC41NlYxMTguODY4YzAtNS44MzQtNC43MjYtMTAuNTYtMTAuNTYtMTAuNTZ6bS0zOS45MDIgOTMuMjMzYzAgNy42NDUtNi4xOTggMTMuODQ0LTEzLjg0MyAxMy44NDRIMTY3LjY5Yy03LjY0NiAwLTEzLjg0NC02LjE5OS0xMy44NDQtMTMuODQ0di0yNC4wMDVjMC03LjY0NiA2LjE5OC0xMy44NDQgMTMuODQ0LTEzLjg0NGgyNC4wMDVjNy42NDUgMCAxMy44NDMgNi4xOTggMTMuODQzIDEzLjg0NHYyNC4wMDV6IiBmaWxsPSIjRjYwIi8+PC9zdmc+"
camel.apache.org/provider: "Apache Software Foundation"
camel.apache.org/kamelet.group: "RabbitMQ"
camel.apache.org/kamelet.namespace: "Messaging"
labels:
camel.apache.org/kamelet.type: "sink"
spec:
definition:
title: "RabbitMQ Sink"
description: |-
Send data to a RabbitMQ Broker.
required:
- host
- port
- exchangeName
type: object
properties:
host:
title: Server Address
description: RabbitMQ broker address
type: string
example: "localhost"
port:
title: Server Port
description: RabbitMQ broker port
type: int
example: 5672
routingKey:
title: Routing Key
description: The routing key to use when binding a consumer queue to the exchange
type: string
username:
title: Username
description: The username to access the RabbitMQ server
type: string
x-descriptors:
- urn:camel:group:credentials
password:
title: Password
description: The password to access the RabbitMQ server
type: string
format: password
x-descriptors:
- urn:alm:descriptor:com.tectonic.ui:password
- urn:camel:group:credentials
exchangeName:
title: Exchange name
description: The exchange name determines the exchange the queue will be bound to
type: string
queues:
title: Queue name
description: The queue to receive messages from
type: string
autoDeclareProducer:
title: Auto Declare Producer
description: Specifies whether the producer should auto declare binding between exchange, queue and routing key when starting
type: boolean
default: false
vhost:
title: Virtual Host
description: The virtual host
type: string
default: "/"
dependencies:
- "camel:spring-rabbitmq"
- "camel:kamelet"
template:
beans:
- name: connectionFactory
type: "#class:org.springframework.amqp.rabbit.connection.CachingConnectionFactory"
properties:
username: '{{?username}}'
password: '{{?password}}'
host: '{{host}}'
port: '{{port}}'
virtualHost: "{{vhost}}"
from:
uri: "kamelet:source"
steps:
- to:
uri: "spring-rabbitmq://{{exchangeName}}"
parameters:
connectionFactory: "#bean:{{connectionFactory}}"
routingKey: "{{?routingKey}}"
queues: "{{?queues}}"
autoDeclareProducer: "{{autoDeclareProducer}}"