New to Kestra?
Use blueprints to kickstart your first workflows.
Automatically open a GitLab issue when a Kestra pipeline fails, with execution link, flow context, and labels, then notify Slack. No manual triage.
Turn silent pipeline failures into tracked GitLab issues automatically. This blueprint monitors a scheduled job and, the moment it fails, files a GitLab issue containing the failing flow context and a link back to the Kestra execution, then posts a Slack notification. The incident lands in your team's existing GitLab tracker without anyone watching dashboards, parsing logs, or copying details into an issue by hand. It closes the gap between "a job broke" and "someone is accountable for fixing it" so failures never go unnoticed.
io.kestra.plugin.core.trigger.Schedule trigger runs the flow on a cron (0 */6 * * *, shipped disabled so you can wire in your own job first).monitored_job task (io.kestra.plugin.scripts.shell.Commands on the Process runner) stands in for the real work you want watched.errors block fires. The open_issue task (io.kestra.plugin.gitlab.issues.Create) opens a GitLab issue with a timestamped title, a markdown body listing the flow, execution id, and start time, plus incident and service-name labels.notify task (io.kestra.plugin.slack.notifications.SlackIncomingWebhook) posts a short message so the team sees the incident immediately.incident and per-service labels for triage and filtering.GitLab's own CI scheduler can run jobs, but it cannot watch an arbitrary external pipeline and open an issue when that pipeline fails. Kestra fills that gap: event-driven errors handlers fire only on failure, declarative YAML keeps the whole monitor-and-report logic in one versioned file, retries and execution lineage are built in, and you can fan the same pattern across every flow without bespoke scripting.
GITLAB_TOKEN: GitLab personal access token with api scope.GITLAB_PROJECT_ID: target GitLab project ID.SLACK_WEBHOOK_URL: Slack incoming webhook URL.The incident and service-name labels should exist in the project, or remove the labels block.
monitored_job task with your real job and set the service_name input.scheduled_run trigger; any failure now opens an issue and pings Slack automatically.url and apiPath to the open_issue task to target your instance.io.kestra.plugin.gitlab.mergerequests.Create.Schedule trigger with a Flow or webhook trigger to monitor other workflows or external events.outputs.open_issue.webUrl to attach the new issue link to downstream alerts.