All Downloads are FREE. Search and download functionalities are using the official Maven repository.

kamelets.mysql-source.kamelet.yaml Maven / Gradle / Ivy

The newest version!
# ---------------------------------------------------------------------------
# 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/v1
kind: Kamelet
metadata:
  name: mysql-source
  annotations:
    camel.apache.org/kamelet.support.level: "Stable"
    camel.apache.org/catalog.version: "4.8.0"
    camel.apache.org/kamelet.icon: "data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIzMiIgaGVpZ2h0PSIzMiIgdmVyc2lvbj0iMS4wIj4KIDxyZWN0IGZpbGw9IiMyNjU1N2MiIHdpZHRoPSIyOCIgaGVpZ2h0PSIyOCIgeD0iLTMwIiB5PSItMzAiIHJ4PSIxLjQiIHJ5PSIxLjQiIHRyYW5zZm9ybT0ibWF0cml4KDAsLTEsLTEsMCwwLDApIi8+CiA8cGF0aCBvcGFjaXR5PSIuMiIgZD0ibTguMDI1NCA4LjAwMDFjLTAuNzgyNS0wLjAxNjYtMS4xNDk0IDAuNTI0NC0wLjk4ODMgMS40NTcgMC4wNTIgMC4zMDA2IDAuMzE1MiAwLjcyOTkgMC44ODI4IDEuNDQxOSAwLjYzMTIyIDAuNzkwOSAwLjg4NTE0IDEuMjIyNyAxLjE2MDIgMS45NzA3IDAuNDMzNiAxLjE3OTMgMC42MzQwMyAxLjU3NDggMC45ODYzMyAxLjk0MzQgMC4yNzM2NiAwLjI4NjMgMC4yNzM2OSAwLjI4NzEyIDAuMDg5ODQgMC44NzEwOS0wLjI4NTA3IDAuOTA1NTYtMC4zNDQwNyAyLjcyMDctMC4xMTUyMyAzLjU3NDIgMC4zNDI0OCAxLjI3NzQgMC43NjQwMiAxLjg1NzQgMS4zNTE2IDEuODU3NCAwLjQxOTY4IDAgMC43NjM2NC0wLjM1MDkyIDAuODg2NzItMC45MDQzIDAuMDQyNjgtMC4xOTE4NiAwLjEyMjQ5LTAuNDY2MDcgMC4xNzc3My0wLjYwOTM4IDAuMDk1MzUtMC4yNDcyOCAwLjEyMDkzLTAuMjI4MTggMC40OTQxNCAwLjM4MDg2IDAuMjE2MjggMC4zNTI5NiAwLjYyODY2IDAuODc4NjEgMC45MTYwMiAxLjE2OCAwLjY2MzggMC42Njg0NSAxLjU3NDkgMS40MjE3IDEuNjQwNiAxLjM1NzQgMC4wMjc3NS0wLjAyNzEzLTAuMjM4LTAuNDIxNzctMC41ODk4NC0wLjg3ODkxcy0xLjAxNTEtMS41MTg5LTEuNDc0Ni0yLjM1OTRjLTAuNTM1OTMtMC45ODAyOS0wLjg5OTctMS41Mjg2LTEuMDEzNy0xLjUyOTMtMC4zNzA0NS0wLjAwMjUtMC43MTU4OCAwLjU4MDA0LTAuOTE2MDIgMS41NDY5LTAuMjMwNTYgMS4xMTM4LTAuNjM2NzUgMC45MjcwOC0wLjk2NjgtMC40NDUzMS0wLjE5MDE5LTAuNzkwODUtMC4wOTEwNi0xLjg1NiAwLjI2MzY3LTIuODUzNSAwLjE2MTM3LTAuNDUzNzYgMC4yOTI5Ny0wLjg3MzczIDAuMjkyOTctMC45MzE2NHMtMC4yNTczMS0wLjU0MzQ4LTAuNTcyMjctMS4wODAxYy0wLjMxNS0wLjUzNy0wLjY4NTEtMS4yOTctMC44MjItMS42OS0wLjMzMjYtMC45NTQtMC40OTA1LTEuMjMyLTEuMTU4Mi0yLjA0My0wLjY4NzktMC44MzQ2LTAuNzUzLTEuMjIwMy0wLjIwNTEtMS4yMTY2IDAuNDI1NTQgMC4wMDI4MSAxLjExMjMgMC4yODk0NCAxLjgwMjcgMC43NTM5MSAwLjQzNzEgMC4yOTQwNCAwLjU4NTIzIDAuMzMzOTggMS4yODcxIDAuMzMzOTggMC44ODE0MiAwIDEuMDcwOSAwLjA3MjIgMi4yOTMgMC44NzY5NSAxLjI0NDUgMC44MTk1OCAyLjE3MjIgMS41ODEzIDIuODE0NSAyLjMxMjUgMC41NzA0IDAuNjQ5MzcgMC44ODIwMSAxLjIxMzggMi41NjA1IDQuNjU2MiAwLjY0NDMzIDEuMzIxNCAxLjIxNTggMS45NTkzIDIuMDAzOSAyLjIzMjQgMS4yMTczIDAuNDIxODUgMS42MzE3IDAuNjEzMTQgMi4xNjggMC45OTgwNWwwLjU2NjQxIDAuNDA2MjUtMC4zODA4NiAwLjA3NDIyYy0wLjIxMDMgMC4wNDAzMy0wLjY2ODQ3IDAuMTA2MTYtMS4wMTc2IDAuMTQ2NDgtMC43Mjc0MSAwLjA4NC0xLjIwMzEgMC4zODU3My0xLjIwMzEgMC43NjM2NyAwIDAuNDI1OTIgMS40NTEzIDEuNjQ1MyAyLjkwNjIgMi40NDE0IDAuNjk5MDMgMC4zODI0NyAxLjM3MTYgMC43NTkyNyAxLjQ5NDEgMC44Mzc4OSAwLjMyNTk4IDAuMjA5MjIgMC40MTQyNCAwLjE4Mzg5IDAuMzMwMDgtMC4wOTE4LTAuMTc2MjQtMC41NzczOC0wLjc3Mjc5LTEuMTM5OC0yLjQyOTctMi4yOTQ5LTAuOTcxOTctMC42Nzc2LTAuOTgxOTktMC42NTI0NCAwLjMxNjQxLTAuNzgxMjUgMC45MjUtMC4wOTEgMS4zOTItMC4yNDkgMS4zOTItMC40NzIgMC0wLjEwMi0wLjQ3LTAuNjQ0LTEuMDQ1LTEuMjAzLTAuOS0wLjg3Ni0xLjIwNC0xLjA5NC0yLjE5NS0xLjU3Ny0xLjM1LTAuNjU2LTEuODQyLTEuMTc3LTIuMTUzLTIuMjgzLTAuNDY0LTEuNjQ5LTEuNzEyLTMuNTg3LTMuMzcxLTUuMjMtMS43MTItMS42OTYtMy4zNDctMi42MzQ0LTQuODQ1LTIuNzgxNC0wLjYwOS0wLjA1OTgtMC45MjQtMC4xNTIyLTEuMjM5LTAuMzY1My0wLjUzMzItMC4zNjExLTEuNzcxNy0wLjc2ODQtMi4zNzY2LTAuNzgxMnptMi45NjI5IDMuMDAyYy0wLjEyMjY2LTAuMDA3OS0wLjIyOTQ1IDAuMDA4NS0wLjMwMjczIDAuMDU4NTktMC4yNzM0MSAwLjE4Njk5LTAuMjQwOTkgMC40MTUwNCAwLjA4MDA4IDAuNTU2NjQgMC4xNTA5MiAwLjA2NjU2IDAuMzY1MDEgMC4zMDE0NyAwLjQ3NjU2IDAuNTIxNDggMC4zNzUxIDAuNzM5NzggMC45NDk4NSAwLjI0NDUgMC42OTMzNi0wLjU5NzY2LTAuMDgwODUtMC4yNjU0Ni0wLjU3OTMtMC41MTU0Ny0wLjk0NzI3LTAuNTM5MDZ6Ii8+CiA8cGF0aCBmaWxsPSIjZmZmIiBkPSJtOC4wMjU0IDdjLTAuNzgyNS0wLjAxNjYtMS4xNDk0IDAuNTI0NC0wLjk4ODMgMS40NTcgMC4wNTIgMC4zMDA2IDAuMzE1MiAwLjczMDIgMC44ODI4IDEuNDQxNCAwLjYzMTIgMC43OTA2IDAuODg1MiAxLjIyMjYgMS4xNjAyIDEuOTcwNiAwLjQzMzYgMS4xNzkgMC42MzQgMS41NzUgMC45ODU5IDEuOTQzIDAuMjc0IDAuMjg3IDAuMjc0IDAuMjg4IDAuMDkgMC44NzItMC4yODQ4IDAuOTA1LTAuMzQzOCAyLjcyLTAuMTE1IDMuNTc0IDAuMzQyIDEuMjc3IDAuNzY0IDEuODU3IDEuMzUyIDEuODU3IDAuNDE5IDAgMC43NjMtMC4zNTEgMC44ODYtMC45MDQgMC4wNDMtMC4xOTIgMC4xMjMtMC40NjYgMC4xNzgtMC42MDkgMC4wOTUtMC4yNDggMC4xMjEtMC4yMjkgMC40OTQgMC4zOCAwLjIxNiAwLjM1MyAwLjYyOSAwLjg3OSAwLjkxNiAxLjE2OCAwLjY2NCAwLjY2OSAxLjU3NSAxLjQyMiAxLjY0MSAxLjM1OCAwLjAyOC0wLjAyNy0wLjIzOC0wLjQyMi0wLjU5LTAuODc5cy0xLjAxNS0xLjUxOS0xLjQ3NS0yLjM1OWMtMC41MzYtMC45ODEtMC44OTktMS41MjktMS4wMTMtMS41My0wLjM3MS0wLjAwMi0wLjcxNiAwLjU4LTAuOTE2IDEuNTQ3LTAuMjMxIDEuMTE0LTAuNjM3IDAuOTI3LTAuOTY3LTAuNDQ1LTAuMTktMC43OTEtMC4wOTEtMS44NTYgMC4yNjQtMi44NTQgMC4xNjEtMC40NTMgMC4yOTMtMC44NzMgMC4yOTMtMC45MzFzLTAuMjU4LTAuNTQ0LTAuNTczLTEuMDhjLTAuMzE1LTAuNTM3LTAuNjg1MS0xLjI5Ny0wLjgyMi0xLjY5LTAuMzMyNi0wLjk1NC0wLjQ5MDUtMS4yMzItMS4xNTgyLTIuMDQyOS0wLjY4NzktMC44MzQ4LTAuNzUzLTEuMjIwNC0wLjIwNTEtMS4yMTY4IDAuNDI1NSAwLjAwMjkgMS4xMTIzIDAuMjg5NSAxLjgwMjMgMC43NTM5IDAuNDM4IDAuMjk0MSAwLjU4NiAwLjMzNCAxLjI4OCAwLjMzNCAwLjg4MSAwIDEuMDcgMC4wNzIyIDIuMjkzIDAuODc3IDEuMjQ0IDAuODE5OCAyLjE3MiAxLjU4MTggMi44MTQgMi4zMTI4IDAuNTcgMC42NDkgMC44ODIgMS4yMTQgMi41NjEgNC42NTYgMC42NDQgMS4zMjEgMS4yMTUgMS45NTkgMi4wMDMgMi4yMzIgMS4yMTggMC40MjIgMS42MzIgMC42MTMgMi4xNjggMC45OThsMC41NjcgMC40MDctMC4zODEgMC4wNzRjLTAuMjEgMC4wNC0wLjY2OSAwLjEwNi0xLjAxOCAwLjE0Ni0wLjcyNyAwLjA4NC0xLjIwMyAwLjM4Ni0xLjIwMyAwLjc2NCAwIDAuNDI2IDEuNDUxIDEuNjQ1IDIuOTA2IDIuNDQxIDAuNyAwLjM4MyAxLjM3MiAwLjc2IDEuNDk1IDAuODM4IDAuMzI2IDAuMjEgMC40MTQgMC4xODQgMC4zMy0wLjA5MS0wLjE3Ny0wLjU3OC0wLjc3My0xLjE0LTIuNDMtMi4yOTUtMC45NzItMC42NzgtMC45ODItMC42NTMgMC4zMTYtMC43ODIgMC45MjYtMC4wOTIgMS4zOTMtMC4yNSAxLjM5My0wLjQ3MiAwLTAuMTAyLTAuNDctMC42NDQtMS4wNDUtMS4yMDMtMC45LTAuODc3LTEuMjA0LTEuMDk0LTIuMTk1LTEuNTc3LTEuMzUtMC42NTYtMS44NDItMS4xNzctMi4xNTMtMi4yODMtMC40NjQtMS42NS0xLjcxMi0zLjU4Ny0zLjM3MS01LjIzLTEuNzEyLTEuNjk2NS0zLjM0Ny0yLjYzNDUtNC44NDUtMi43ODE1LTAuNjA5LTAuMDU5OC0wLjkyNC0wLjE1MjItMS4yMzktMC4zNjUzLTAuNTMzMi0wLjM2MTEtMS43NzE3LTAuNzY4NC0yLjM3NjYtMC43ODEyem0yLjk2MjYgMy4wMDJjLTAuMTIyLTAuMDA3OS0wLjIyOSAwLjAwOC0wLjMwMiAwLjA1OS0wLjI3NCAwLjE4Ny0wLjI0MSAwLjQxNSAwLjA4IDAuNTU2IDAuMTUxIDAuMDY3IDAuMzY1IDAuMzAyIDAuNDc2IDAuNTIyIDAuMzc1IDAuNzM5IDAuOTUgMC4yNDQgMC42OTQtMC41OTgtMC4wODEtMC4yNjUtMC41OC0wLjUxNS0wLjk0OC0wLjUzOXoiLz4KIDxwYXRoIGZpbGw9IiNmZmYiIG9wYWNpdHk9Ii4xIiBkPSJtMy40MDA0IDJjLTAuNzc1NiAwLTEuNDAwNCAwLjYyNDgtMS40MDA0IDEuNDAwNHYxYzAtMC43NzU2IDAuNjI0OC0xLjQwMDQgMS40MDA0LTEuNDAwNGgyNS4yYzAuNzc1IDAgMS40IDAuNjI0OCAxLjQgMS40MDA0di0xYzAtMC43NzU2LTAuNjI1LTEuNDAwNC0xLjQtMS40MDA0aC0yNS4yeiIvPgogPHBhdGggb3BhY2l0eT0iLjIiIGQ9Im0yIDI4LjZ2MWMwIDAuNzc1IDAuNjI0OCAxLjQgMS40MDA0IDEuNGgyNS4yYzAuNzc1IDAgMS40LTAuNjI1IDEuNC0xLjR2LTFjMCAwLjc3NS0wLjYyNSAxLjQtMS40IDEuNGgtMjUuMmMtMC43NzUyIDAtMS40LTAuNjI1LTEuNC0xLjR6Ii8+Cjwvc3ZnPgo="
    camel.apache.org/provider: "Apache Software Foundation"
    camel.apache.org/kamelet.group: "SQL"
    camel.apache.org/kamelet.namespace: "Database"
  labels:
    camel.apache.org/kamelet.type: "source"
spec:
  definition:
    title: "MySQL Source"
    description: |-
      Query data from a MySQL Database.

      In your Pipe file, you must explicitly declare the SQL Server driver dependency in spec->integration->dependencies.
      
      - "mvn:mysql:mysql-connector-java:"
    required:
      - serverName
      - username
      - password
      - query
      - databaseName
    type: object
    properties:
      serverName:
        title: Server Name
        description: The server name for the data source.
        type: string
        example: localhost
      serverPort:
        title: Server Port
        description: The server port for the data source.
        type: string
        default: 3306
      username:
        title: Username
        description: The username to access a secured MySQL Database.
        type: string
        x-descriptors:
        - urn:camel:group:credentials
      password:
        title: Password
        description: The password to access a secured MySQL Database.
        type: string
        format: password
        x-descriptors:
        - urn:camel:group:credentials
      query:
        title: Query
        description: The query to execute against the MySQL Database.
        type: string
        example: 'INSERT INTO accounts (username,city) VALUES (:#username,:#city)'
      databaseName:
        title: Database Name
        description: The name of the MySQL Database.
        type: string
      consumedQuery:
        title: Consumed Query
        description: A query to run on a tuple consumed.
        type: string
        example: 'DELETE FROM accounts where user_id = :#user_id'
      delay:
        title: Delay
        description: The number of milliseconds before the next poll
        type: integer
        default: 500
  types:
    out:
      mediaType: application/json
  dependencies:
  - "camel:jackson"
  - "camel:kamelet"
  - "camel:sql"
  - "mvn:org.apache.commons:commons-dbcp2:2.12.0"
  template:
    beans:
      - name: dsBean
        type: "#class:org.apache.commons.dbcp2.BasicDataSource"
        properties:
          username: '{{username}}'
          password: '{{password}}'
          url: 'jdbc:mysql://{{serverName}}:{{serverPort}}/{{databaseName}}'
          driverClassName: 'com.mysql.cj.jdbc.Driver'
    from:
      uri: "sql:{{query}}"
      parameters:
        dataSource: "#bean:{{dsBean}}"
        onConsume: "{{?consumedQuery}}"
        delay: "{{delay}}"
      steps:
      - marshal:
          json: 
            library: Jackson
      - to: "kamelet:sink"





© 2015 - 2024 Weber Informatics LLC | Privacy Policy