Trigger Trigger

yaml
type: "io.kestra.plugin.couchbase.Trigger"

Query a Couchbase database on regular intervals, and trigger flow on results.

Examples

Wait for a N1QL query to return results, and then iterate through rows.

yaml
id: couchbase-trigger
namespace: io.kestra.tests

tasks:
  - id: each
    type: io.kestra.core.tasks.flows.EachSequential
    tasks:
      - id: return
        type: io.kestra.core.tasks.debugs.Return
        format: "{{ json(taskrun.value) }}"
    value: "{{ trigger.rows }}"

triggers:
  - id: watch
    type: io.kestra.plugin.couchbase.Trigger
    interval: "PT5M"
    connectionString: couchbase://localhost
    username: couchbase_user
    password: couchbase_passwd
    query: SELECT * FROM `COUCHBASE_BUCKET`(.`COUCHBASE_SCOPE`.`COUCHBASE_COLLECTION`)
    fetchType: FETCH

Properties

connectionString

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

Connection string used to locate the Couchbase cluster.

fetchType

  • Type: string
  • Dynamic:
  • Required: ✔️
  • Default: STORE
  • Possible Values:
    • STORE
    • FETCH
    • FETCH_ONE
    • NONE

The way you want to fetch and/or store the data. FETCH_ONE - output just the first row. FETCH - output all the rows. STORE - store all the rows in a file. NONE - do nothing.

interval

  • Type: string
  • Dynamic:
  • Required: ✔️
  • Default: 60.000000000
  • Format: duration

Interval between polling. The interval between 2 different polls of schedule, this can avoid to overload the remote system with too many calls. For most of the triggers that depend on external systems, a minimal interval must be at least PT30S. See ISO_8601 Durations for more information of available interval values.

password

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

Plaintext authentication password.

query

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

N1QL query to execute on Couchbase database.

username

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

Plaintext authentication username.

conditions

List of conditions in order to limit the flow trigger.

parameters

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

Query parameters, can be positional or named parameters. See Couchbase documentation about Prepared Statements for query syntax. This should be supplied with a parameter map if using named parameters, or an array for positional ones.

stopAfter

  • Type: array
  • SubType: string
  • Dynamic:
  • Required:

List of execution states after which a trigger should be stopped (a.k.a. disabled).

Outputs

row

  • Type: object
  • Dynamic:
  • Required:

Map containing the first row of fetched data. Only populated if using FETCH_ONE.

rows

  • Type: array
  • SubType: object
  • Dynamic:
  • Required:

List containing the fetched data. Only populated if using FETCH.

size

  • Type: integer
  • Dynamic:
  • Required:

The number of rows to be fetched. Only populated if fetchType is 'FETCH' or 'STORE'.

uri

  • Type: string
  • Dynamic:
  • Required:
  • Format: uri

The URI of the stored result in Kestra's internal storage. Only populated if using STORE.

Definitions

io.kestra.core.models.conditions.Condition