New to Kestra?
Use blueprints to kickstart your first workflows.
Automatically create a Linear issue whenever a Kestra workflow fails or warns. A declarative incident management and monitoring blueprint for instance-wide pipeline reliability.
Turn every failed Kestra workflow into a tracked Linear issue automatically. This system blueprint wires Kestra's orchestration layer to Linear so that whenever an execution fails or finishes with a warning, a structured incident is created in your team's Linear workspace. It closes the gap between pipeline monitoring and incident management: instead of fishing through logs or waiting for someone to notice a broken job, your on-call and engineering teams get failures surfaced in the same tool they already use for product and bug tracking. This is a reusable, declarative pattern for operational monitoring, platform reliability, and incident response across an entire Kestra instance.
io.kestra.plugin.core.trigger.Flow trigger watches executions across the
instance instead of being tied to a single flow.io.kestra.plugin.core.condition.ExecutionStatus
fires only on FAILED and WARNING outcomes, and io.kestra.plugin.core.condition.ExecutionNamespace
narrows scope to executions whose namespace starts with the configured PREFIX.linear task (io.kestra.plugin.linear.issues.Create) creates a
new issue on the configured team, titled Workflow failed, with a description that interpolates
{{ trigger.executionId }} and {{ taskrun.startDate }} for traceability.labels (Bug, Workflow) so it routes and filters cleanly inside Linear.Linear has no awareness of your data pipelines, and most schedulers stop at running a job, they
cannot react to another workflow's outcome. Kestra's event-driven Flow trigger fills that gap:
it reacts to execution status across every namespace, applies declarative conditions, and benefits
from retries, full execution lineage, and version-controlled YAML. You get a single, auditable
source of truth for what failed, when, and why it was escalated, all defined as code rather than
scattered scripts.
system namespace flow).This blueprint uses the Linear API token from a secret ({{ secret('LINEAR_API_TOKEN') }}) and a team (MyTeamName) as inline
placeholders. Replace them with your real Linear API token and team. For production, store the
token as a Kestra secret and reference it with {{ secret('LINEAR_API_TOKEN') }} rather than
hardcoding it in the flow.
token to your Linear API token (ideally via a secret) and team to your target team.ExecutionNamespace namespace prefix to match the workflows you want monitored.linear to post to Slack, send an email, or page on-call.description with the failed task ID, error message, or a direct execution URL.labels or set issue priority and assignee per team conventions.