-
Notifications
You must be signed in to change notification settings - Fork 7
Expand file tree
/
Copy pathmulti-tekton-pipeline.yml
More file actions
111 lines (110 loc) · 3.09 KB
/
multi-tekton-pipeline.yml
File metadata and controls
111 lines (110 loc) · 3.09 KB
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
#@ load("@ytt:data", "data")
apiVersion: tekton.dev/v1beta1
kind: Pipeline
metadata:
name: tekton-pipeline
namespace: #@ data.values.tap.devNamespace
labels:
apps.tanzu.vmware.com/pipeline: test
spec:
params:
- name: source-url
- name: source-revision
tasks:
- name: check-build-tool
params:
- name: source-url
value: $(params.source-url)
- name: source-revision
value: $(params.source-revision)
taskSpec:
params:
- name: source-url
- name: source-revision
results:
- name: build-tool
description: returns the used build-tool
steps:
- name: check-file
image: alpine
script: |
cd `mktemp -d`
wget -qO- $(params.source-url) | tar xvz -m
if test -f package.json; then
printf npm | tee /tekton/results/build-tool
elif test -f pom.xml; then
printf maven | tee /tekton/results/build-tool
elif test -f build.gradle; then
printf gradle | tee /tekton/results/build-tool
else
printf go | tee /tekton/results/build-tool
fi
- name: test-mvn
params:
- name: source-url
value: $(params.source-url)
- name: source-revision
value: $(params.source-revision)
when:
- input: "$(tasks.check-build-tool.results.build-tool)"
operator: in
values: ["maven"]
runAfter:
- check-build-tool
taskSpec:
params:
- name: source-url
- name: source-revision
steps:
- name: test
image: gradle
script: |-
cd `mktemp -d`
wget -qO- $(params.source-url) | tar xvz -m
./mvnw test
- name: gradle-test
params:
- name: source-url
value: $(params.source-url)
- name: source-revision
value: $(params.source-revision)
when:
- input: "$(tasks.check-build-tool.results.build-tool)"
operator: in
values: ["gradle"]
runAfter:
- check-build-tool
taskSpec:
params:
- name: source-url
- name: source-revision
steps:
- name: test
image: gradle
script: |-
cd `mktemp -d`
wget -qO- $(params.source-url) | tar xvz -m
./gradlew test
- name: npm-test
params:
- name: source-url
value: $(params.source-url)
- name: source-revision
value: $(params.source-revision)
when:
- input: "$(tasks.check-build-tool.results.build-tool)"
operator: in
values: ["npm"]
runAfter:
- check-build-tool
taskSpec:
params:
- name: source-url
- name: source-revision
steps:
- name: test
image: node:8
script: |-
cd `mktemp -d`
wget -qO- $(params.source-url) | tar xvz -m
npm install-test