-
Notifications
You must be signed in to change notification settings - Fork 2
/
create-github-issue-on-failure.yaml
60 lines (51 loc) · 1.75 KB
/
create-github-issue-on-failure.yaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
id: create-github-issue-on-failure
namespace: company.team
tasks:
- id: create_issue
type: io.kestra.plugin.github.issues.Create
jwtToken: "{{ secret('GITHUB_TOKEN') }}"
repository: kestra-io/kestra
title: Kestra Workflow Failure
body: "{{ trigger.executionId }} has failed on {{ taskrun.startDate }}"
labels:
- bug
- workflow
triggers:
- id: on_failure
type: io.kestra.plugin.core.trigger.Flow
conditions:
- type: io.kestra.plugin.core.condition.ExecutionStatusCondition
in:
- FAILED
- WARNING
- type: io.kestra.plugin.core.condition.ExecutionNamespaceCondition
namespace: company
comparison: PREFIX
extend:
title: Create GitHub issue when a workflow fails
description: >-
This system flow will create a GitHub issue anytime a workflow in a
`company` namespace (or any nested child namespace) fails.
You can customize that system flow by modifying the task, adding more tasks
to the flow or adjusting the trigger conditions. Read more about that
pattern in the [Administrator
Guide](https://kestra.io/docs/administrator-guide/monitoring).
Let's create a flow in the namespace with prefix `company` that will always
fail.
```yaml
id: failure_flow
namespace: company.team
tasks:
- id: always_fails
type: io.kestra.plugin.core.execution.Fail
```
Whenever you run the `failure_flow`, it will trigger an execution of the
`create_github_issue_on_failure` flow. As a result, a GitHub issue will be
created so that an appropriate action can be taken.
tags:
- System
- Notifications
- Git
ee: false
demo: false
meta_description: Create GitHub issue on workflow execution failure