Produce Produce

yaml
type: "io.kestra.plugin.nats.Produce"

Produce messages to a NATS subject on a NATS server.

Examples

Produce a single message to kestra.publish subject, using user password authentication.

yaml
id: nats_produce_single_message
namespace: company.team

tasks:
  - id: produce
    type: io.kestra.plugin.nats.Produce
    url: nats://localhost:4222
    username: nats_user
    password: nats_password
    subject: kestra.publish
    from:
      headers:
        someHeaderKey: someHeaderValue
      data: Some message

Produce 2 messages to kestra.publish subject, using user password authentication.

yaml
id: nats_produce_two_messages
namespace: company.team

tasks:
  - id: produce
    type: io.kestra.plugin.nats.Produce
    url: nats://localhost:4222
    username: nats_user
    password: nats_password
    subject: kestra.publish
    from:
      - headers:
          someHeaderKey: someHeaderValue
        data: Some message
      - data: Another message

Produce messages (1 / row) from an internal storage file to kestra.publish subject, using user password authentication.

yaml
id: nats_produce_messages_from_file
namespace: company.team

tasks:
  - id: produce
    type: io.kestra.plugin.nats.Produce
    url: nats://localhost:4222
    username: nats_user
    password: nats_password
    subject: kestra.publish
    from: "{{ outputs.some_task_with_output_file.uri }}"

Properties

from

  • Type:
    • string
    • array
    • object
  • Dynamic: ✔️
  • Required: ✔️

Source of message(s) to send

Can be an internal storage uri, a map or a list.with the following format: headers, data

subject

  • Type: string
  • Dynamic: ✔️
  • Required: ✔️
  • Min length: 1

Subject to produce message to

url

  • Type: string
  • Dynamic: ✔️
  • Required: ✔️
  • Min length: 1

URL to connect to NATS server

The format is (nats://)server_url:port. You can also provide a connection token like so: nats://token@server_url:port

creds

  • Type: string
  • Dynamic: ✔️
  • Required:

Credentials files authentification

password

  • Type: string
  • Dynamic: ✔️
  • Required:

Plaintext authentication password

token

  • Type: string
  • Dynamic: ✔️
  • Required:

Token authentification

username

  • Type: string
  • Dynamic: ✔️
  • Required:

Plaintext authentication username

Outputs

messagesCount

  • Type: integer
  • Required:

Number of messages produced

Was this page helpful?