
Ruby CommandsTrigger
CertifiedTrigger a flow when Ruby commands match a condition
Ruby CommandsTrigger
Trigger a flow when Ruby commands match a condition
Polls and triggers a flow by executing inline Ruby scripts and commands.
type: io.kestra.plugin.scripts.ruby.CommandsTriggerExamples
Trigger when Ruby command fails.
id: ruby_commands_trigger
namespace: company.team
triggers:
- id: on_fail
type: io.kestra.plugin.scripts.ruby.CommandsTrigger
interval: PT5S
exitCondition: "exit 1"
commands:
- ruby -e "raise 'boom'"
tasks:
- id: log
type: io.kestra.plugin.core.log.Log
message: "Triggered with exitCode={{ trigger.exitCode }}"
Properties
commands *Requiredarray
Ruby commands to execute
Commands executed on each poll.
exitCondition *Requiredstring
Condition to match
Condition evaluated after execution.
Supported forms:
- 'exit N'
- regex / substring matched against vars + logs
allowConcurrent Non-dynamicboolean
falseSpecifies whether a trigger is allowed to start a new execution even if a previous run is still in progress.
containerImage string
rubyDocker image used to execute the commands
Container image used by the underlying Commands task to run Ruby commands. Defaults to 'ruby'.
edge booleanstring
trueEdge trigger mode
If true, the trigger emits only on a transition from 'not matching' to 'matching' (anti-spam). If false, the trigger emits on every poll where the condition matches.
interval Non-dynamicstring
PT1MdurationCheck interval
Interval between polling evaluations.
stopAfter Non-dynamicarray
CREATEDSUBMITTEDRUNNINGPAUSEDRESTARTEDKILLINGSUCCESSWARNINGFAILEDKILLEDCANCELLEDQUEUEDRETRYINGRETRIEDSKIPPEDBREAKPOINTRESUBMITTEDList of execution states after which a trigger should be stopped (a.k.a. disabled).
when string
trueA condition that determines whether the trigger should run.
A Pebble expression evaluated at trigger time. The trigger fires only when the expression evaluates to a truthy value (true, a non-empty string, a non-zero number). Use this to gate trigger execution on dynamic runtime values such as execution labels, flow variables, or environment conditions.
Outputs
condition string
Rendered condition
Rendered value of the exitCondition property for this poll.
exitCode integer
Commands exit code
Exit code returned by the Ruby process (may be null if not available).
timestamp string
date-timePoll timestamp
Timestamp when this trigger evaluation occurred.
vars object
Commands vars
Vars produced by the task (e.g. via ::{"outputs": {...}}:: convention).