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 2024/03/07 08:42:02 UTC
(camel-kamelets) 09/11: CDC Storage Source Kamelets, rename to -event-based instead of cdc - Google Storage
This is an automated email from the ASF dual-hosted git repository.
acosentino pushed a commit to branch 1930
in repository https://gitbox.apache.org/repos/asf/camel-kamelets.git
commit 922fbe740463dfb41748085893224826c9bf8bc5
Author: Andrea Cosentino <an...@gmail.com>
AuthorDate: Thu Mar 7 09:37:46 2024 +0100
CDC Storage Source Kamelets, rename to -event-based instead of cdc - Google Storage
Signed-off-by: Andrea Cosentino <an...@gmail.com>
---
.../google-storage-cdc-source.kamelet.yaml | 123 ---------------------
1 file changed, 123 deletions(-)
diff --git a/library/camel-kamelets/src/main/resources/kamelets/google-storage-cdc-source.kamelet.yaml b/library/camel-kamelets/src/main/resources/kamelets/google-storage-cdc-source.kamelet.yaml
deleted file mode 100644
index 27445151..00000000
--- a/library/camel-kamelets/src/main/resources/kamelets/google-storage-cdc-source.kamelet.yaml
+++ /dev/null
@@ -1,123 +0,0 @@
-# ---------------------------------------------------------------------------
-# 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: google-storage-cdc-source
- annotations:
- camel.apache.org/kamelet.support.level: "Preview"
- camel.apache.org/catalog.version: "4.5.0-SNAPSHOT"
- camel.apache.org/kamelet.icon: "data:image/svg+xml;base64,PHN2ZyBoZWlnaHQ9IjI1MDAiIHZpZXdCb3g9Ii0xLjYzMzIzNTQzIDcuMDMyNjA5MzMgMTMxLjI2NTc0NjgyIDExNC40MzkzOTA2NyIgd2lkdGg9IjI1MDAiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiPjxsaW5lYXJHcmFkaWVudCBpZD0iYSIgZ3JhZGllbnRVbml0cz0idXNlclNwYWNlT25Vc2UiIHgxPSI2NCIgeDI9IjY0IiB5MT0iNy4wMzQiIHkyPSIxMjAuNzg5Ij48c3RvcCBvZmZzZXQ9IjAiIHN0b3AtY29sb3I9IiM0Mzg3ZmQiLz48c3RvcCBvZmZzZXQ9IjEiIHN0b3 [...]
- camel.apache.org/provider: "Apache Software Foundation"
- camel.apache.org/kamelet.group: "Google Storage"
- camel.apache.org/kamelet.namespace: "GCP"
- labels:
- camel.apache.org/kamelet.type: "source"
-spec:
- definition:
- title: "Google Storage CDC Source"
- description: |-
- Receive data from Google Pubsub reporting events related to a Google Storage bucket.
-
- Service account key is the basic method for authenticating to the Google Pubsub and Google Storage.
-
- To use this Kamelet you'll need to set up Events notification for your Google Storage Bucket.
-
- You must encode the `serviceAccountKey` property before you pass it as a parameter.
- required:
- - projectId
- - subscriptionName
- - serviceAccountKey
- - bucketNameOrArn
- type: object
- properties:
- projectId:
- title: Project Id
- description: The Google Cloud Pub/Sub Project ID.
- type: string
- subscriptionName:
- title: Subscription Name
- description: The subscription name.
- type: string
- serviceAccountKey:
- title: Service Account Key
- description: The service account key to use as credentials for the Pub/Sub publisher/subscriber. You must encode this value in base64.
- type: binary
- x-descriptors:
- - urn:camel:group:credentials
- synchronousPull:
- title: Synchronous Pull
- description: Specifies to synchronously pull batches of messages.
- type: boolean
- default: false
- maxMessagesPerPoll:
- title: Max Messages Per Poll
- description: The maximum number of messages to receive from the server in a single API call.
- type: integer
- default: 1
- concurrentConsumers:
- title: Concurrent Consumers
- description: The number of parallel streams to consume from the subscription.
- type: integer
- default: 1
- bucketNameOrArn:
- title: Bucket Name Or ARN
- description: The Google Cloud Storage bucket name or Bucket Amazon Resource Name (ARN).
- type: string
- getObject:
- title: Get Object in Bucket
- description: >-
- If getObject is enabled, then the file created in the Bucket will be
- get and returned as body, if not only the event will be returned as body.
- type: boolean
- default: false
- dependencies:
- - "camel:kamelet"
- - "camel:google-pubsub"
- - "camel:google-storage"
- - "camel:jackson"
- - "camel:core"
- template:
- from:
- uri: "google-pubsub://{{projectId}}:{{subscriptionName}}"
- parameters:
- serviceAccountKey: "base64:{{serviceAccountKey}}"
- synchronousPull: "{{synchronousPull}}"
- maxMessagesPerPoll: "{{maxMessagesPerPoll}}"
- concurrentConsumers: "{{concurrentConsumers}}"
- steps:
- - choice:
- precondition: true
- when:
- - simple: '${properties:getObject:true}'
- steps:
- - setProperty:
- name: google-storage-event-type
- simple: "${headers.CamelGooglePubsubAttributes[eventType]}"
- - setProperty:
- name: google-storage-object-id
- simple: "${headers.CamelGooglePubsubAttributes[objectId]}"
- - setProperty:
- name: google-storage-bucket-id
- simple: "${headers.CamelGooglePubsubAttributes[bucketId]}"
- - choice:
- when:
- - simple: '${exchangeProperty.google-storage-event-type} == "OBJECT_FINALIZE" && ${exchangeProperty.google-storage-bucket-id} == "{{bucketNameOrArn}}"'
- steps:
- - toD: >-
- google-storage:{{bucketNameOrArn}}?serviceAccountKey=base64:{{serviceAccountKey}}&operation=getObject&objectName=${exchangeProperty.google-storage-object-id}
- - to: 'kamelet:sink'