搜索

29.3. 使用方法

download PDF

这部分论述了如何使用 insert-field-action

29.3.1. Knative Action

您可以在 Knative 绑定中使用 insert-field-action Kamelet 作为中间步骤。

insert-field-action-binding.yaml

apiVersion: camel.apache.org/v1alpha1
kind: KameletBinding
metadata:
  name: insert-field-action-binding
spec:
  source:
    ref:
      kind: Kamelet
      apiVersion: camel.apache.org/v1alpha1
      name: timer-source
    properties:
      message: '{"foo":"John"}'
  steps:
  - ref:
      kind: Kamelet
      apiVersion: camel.apache.org/v1alpha1
      name: json-deserialize-action
  - ref:
      kind: Kamelet
      apiVersion: camel.apache.org/v1alpha1
      name: insert-field-action
    properties:
      field: "The Field"
      value: "The Value"
  sink:
    ref:
      kind: Channel
      apiVersion: messaging.knative.dev/v1
      name: mychannel

29.3.1.1. 前提条件

确保已将 "Red Hat Integration - Camel K" 安装到您连接到的 OpenShift 集群中。

29.3.1.2. 使用集群 CLI 的步骤

  1. insert-field-action-binding.yaml 文件保存到本地驱动器中,然后根据需要编辑该文件。
  2. 使用以下命令运行操作:

    oc apply -f insert-field-action-binding.yaml

29.3.1.3. 使用 Kamel CLI 的步骤

使用以下命令配置并运行操作:

kamel bind --name insert-field-action-binding timer-source?message='{"foo":"John"}' --step json-deserialize-action --step insert-field-action -p step-1.field='The Field' -p step-1.value='The Value' channel:mychannel

此命令在集群的当前命名空间中创建 KameletBinding。

29.3.2. Kafka 操作

您可以在 Kafka 绑定中使用 insert-field-action Kamelet 作为中间步骤。

insert-field-action-binding.yaml

apiVersion: camel.apache.org/v1alpha1
kind: KameletBinding
metadata:
  name: insert-field-action-binding
spec:
  source:
    ref:
      kind: Kamelet
      apiVersion: camel.apache.org/v1alpha1
      name: timer-source
    properties:
      message: '{"foo":"John"}'
  steps:
  - ref:
      kind: Kamelet
      apiVersion: camel.apache.org/v1alpha1
      name: json-deserialize-action
  - ref:
      kind: Kamelet
      apiVersion: camel.apache.org/v1alpha1
      name: insert-field-action
    properties:
      field: "The Field"
      value: "The Value"
  sink:
    ref:
      kind: KafkaTopic
      apiVersion: kafka.strimzi.io/v1beta1
      name: my-topic

29.3.2.1. 先决条件

确保您已在 OpenShift 集群中安装了 AMQ Streams Operator,并在当前命名空间中创建一个名为 my-topic 的主题。另外,请确保已将 "Red Hat Integration - Camel K" 安装到您连接到的 OpenShift 集群中。

29.3.2.2. 使用集群 CLI 的步骤

  1. insert-field-action-binding.yaml 文件保存到本地驱动器中,然后根据需要编辑该文件。
  2. 使用以下命令运行操作:

    oc apply -f insert-field-action-binding.yaml

29.3.2.3. 使用 Kamel CLI 的步骤

使用以下命令配置并运行操作:

kamel bind --name insert-field-action-binding timer-source?message='{"foo":"John"}' --step json-deserialize-action --step insert-field-action -p step-1.field='The Field' -p step-1.value='The Value' kafka.strimzi.io/v1beta1:KafkaTopic:my-topic

此命令在集群的当前命名空间中创建 KameletBinding。

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.