-
Notifications
You must be signed in to change notification settings - Fork 828
/
pipeline.yaml
114 lines (108 loc) · 2.67 KB
/
pipeline.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
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
apiVersion: tekton.dev/v1beta1
kind: Pipeline
metadata:
name: upgrade
namespace: karpenter-tests
spec:
params:
- name: cluster-name
default: $(context.pipelineRun.namespace)-$(context.pipelineRun.name)
description: Uniquely identifies a cluster name for the suite.
- name: from-git-ref
default: v0.16.1
description: Git commit, tag, or branch to check out. Requires a corresponding Karpenter snapshot release.
- name: to-git-ref
default: HEAD
description: Git commit, tag, or branch to check out. Requires a corresponding Karpenter snapshot release.
- name: cleanup
default: "true"
description: If true, clean up resources
tasks:
- name: setup
taskRef:
name: setup
params:
- name: cluster-name
value: $(params.cluster-name)
- name: git-ref
value: $(params.from-git-ref)
- name: run-test
taskRef:
name: run-test
params:
- name: cluster-name
value: $(params.cluster-name)
- name: git-ref
value: $(params.from-git-ref)
- name: test-filter
value: TestIntegration
runAfter:
- setup
- name: upgrade-chart
taskRef:
name: setup
params:
- name: cluster-name
value: $(params.cluster-name)
- name: git-ref
value: $(params.to-git-ref)
runAfter:
- run-test
- name: upgrade-crds
taskRef:
name: upgrade-crds
params:
- name: cluster-name
value: $(params.cluster-name)
- name: git-ref
value: $(params.to-git-ref)
runAfter:
- upgrade-chart
- name: run-test-again
taskRef:
name: run-test
params:
- name: cluster-name
value: $(params.cluster-name)
- name: git-ref
value: $(params.to-git-ref)
- name: test-filter
value: TestIntegration
runAfter:
- upgrade-crds
finally:
- name: cleanup
taskRef:
name: cleanup
params:
- name: cluster-name
value: $(params.cluster-name)
when:
- input: $(params.cleanup)
operator: in
values:
- "true"
- name: notify-build-failure
when:
- input: $(tasks.status)
operator: in
values: ["Failed"]
taskRef:
name: notify-slack
params:
- name: webhook-secret
value: slack-webhook-secret
- name: message
value: ":x: $(context.pipelineRun.name) has failed"
- name: notify-build-success
when:
- input: $(tasks.status)
operator: in
values: ["Succeeded", "Completed"]
taskRef:
name: notify-slack
params:
- name: webhook-secret
value: slack-webhook-secret
- name: message
value: ":white_check_mark: $(context.pipelineRun.name) has succeeded"