Build latest Functest Kubernetes images
[releng.git] / jjb / functest / xtesting-ci-vm.yaml
1 ---
2 - scm:
3     name: xtesting-ci-vm-scm
4     scm:
5       - git:
6           url: '{url}'
7           branches:
8             - '{ref}'
9
10 - builder:
11     name: xtesting-ci-vm-builder
12     builders:
13       - shell: |
14           curl https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add -
15           echo "deb https://packages.cloud.google.com/apt cloud-sdk main" | sudo tee \
16             /etc/apt/sources.list.d/google-cloud-sdk.list
17           sudo apt-get -o DPkg::Lock::Timeout=300 update && \
18           DEBIAN_FRONTEND=noninteractive sudo apt-get \
19             -o DPkg::Lock::Timeout=300 install python3-diskimage-builder -y
20           if [ "{project}" == "xtestingci" ]; then
21             export ELEMENTS_PATH=$(pwd)/elements
22           else
23             git init ansible-role-xtesting
24             (cd ansible-role-xtesting &&
25               git fetch --tags https://github.com/collivier/ansible-role-xtesting.git {role-version} &&
26               git checkout FETCH_HEAD)
27             export ELEMENTS_PATH=$(pwd)/elements:$(pwd)/ansible-role-xtesting/elements
28           fi
29           export DIB_XTESTINGCI_VERSION={role-version}
30           disk-image-create --image-size 20 -o {project}-{version}.qcow2 debian vm {project}
31           gsutil cp {project}-{version}.qcow2 gs://artifacts.opnfv.org/{project}/{project}-{version}.qcow2
32           rm -rf {project}-{version}.qcow2 {project}-{version}.d
33
34 - trigger:
35     name: xtesting-ci-vm-trigger
36     triggers:
37       - timed: '@weekly'
38
39 - parameter:
40     name: xtesting-ci-vm-parameter
41     parameters:
42       - label:
43           name: node
44           default: 'opnfv-build'
45
46 - job-template:
47     name: '{project}-{version}-vm'
48     scm:
49       - xtesting-ci-vm-scm:
50           url: '{url}'
51           ref: '{ref}'
52     triggers:
53       - xtesting-ci-vm-trigger
54     parameters:
55       - xtesting-ci-vm-parameter
56     properties:
57       - build-blocker:
58           use-build-blocker: true
59           blocking-level: 'NODE'
60           blocking-jobs:
61             - '^.*-vm$'
62     builders:
63       - xtesting-ci-vm-builder:
64           project: '{project}'
65           version: '{version}'
66           role-version: '{role-version}'
67
68 - project:
69     name: 'xtesting-ci-vm'
70     project:
71       - xtestingci:
72           url: https://github.com/collivier/ansible-role-xtesting.git
73       - xtesting:
74           url: https://git.opnfv.org/functest-xtesting.git
75       - functest:
76           url: https://git.opnfv.org/functest.git
77       - functest-kubernetes:
78           url: https://git.opnfv.org/functest-kubernetes.git
79     version:
80       - latest:
81           ref: master
82           role-version: master
83       - '2023.2':
84           ref: stable/2023.2
85           role-version: master
86       - '2023.1':
87           ref: stable/2023.1
88           role-version: master
89       - zed:
90           ref: stable/zed
91           role-version: master
92       - yoga:
93           ref: stable/yoga
94           role-version: master
95       - xena:
96           ref: stable/xena
97           role-version: master
98       - wallaby:
99           ref: stable/wallaby
100           role-version: master
101       - leguer:
102           ref: stable/leguer
103           role-version: master
104       - kali:
105           ref: stable/kali
106           role-version: master
107       - jerma:
108           ref: stable/jerma
109           role-version: master
110       - v1.28:
111           ref: stable/v1.28
112           role-version: master
113       - v1.27:
114           ref: stable/v1.27
115           role-version: master
116       - v1.26:
117           ref: stable/v1.26
118           role-version: master
119       - v1.25:
120           ref: stable/v1.25
121           role-version: master
122       - v1.24:
123           ref: stable/v1.24
124           role-version: master
125       - v1.23:
126           ref: stable/v1.23
127           role-version: master
128       - v1.22:
129           ref: stable/v1.22
130           role-version: master
131     exclude:
132       - project: xtestingci
133         version: '2023.2'
134       - project: functest
135         version: '2023.2'
136       - project: functest-kubernetes
137         version: '2023.2'
138       - project: xtestingci
139         version: '2023.1'
140       - project: functest
141         version: '2023.1'
142       - project: functest-kubernetes
143         version: '2023.1'
144       - project: xtestingci
145         version: zed
146       - project: functest-kubernetes
147         version: zed
148       - project: xtestingci
149         version: yoga
150       - project: functest-kubernetes
151         version: yoga
152       - project: xtestingci
153         version: xena
154       - project: functest-kubernetes
155         version: xena
156       - project: xtestingci
157         version: wallaby
158       - project: functest-kubernetes
159         version: wallaby
160       - project: xtestingci
161         version: leguer
162       - project: xtesting
163         version: leguer
164       - project: functest-kubernetes
165         version: leguer
166       - project: xtestingci
167         version: kali
168       - project: xtesting
169         version: kali
170       - project: functest-kubernetes
171         version: kali
172       - project: xtestingci
173         version: jerma
174       - project: xtesting
175         version: jerma
176       - project: functest-kubernetes
177         version: jerma
178       - project: xtestingci
179         version: v1.28
180       - project: functest
181         version: v1.28
182       - project: xtesting
183         version: v1.28
184       - project: xtestingci
185         version: v1.27
186       - project: functest
187         version: v1.27
188       - project: xtesting
189         version: v1.27
190       - project: xtestingci
191         version: v1.26
192       - project: functest
193         version: v1.26
194       - project: xtesting
195         version: v1.26
196       - project: xtestingci
197         version: v1.25
198       - project: functest
199         version: v1.25
200       - project: xtesting
201         version: v1.25
202       - project: xtestingci
203         version: v1.24
204       - project: functest
205         version: v1.24
206       - project: xtesting
207         version: v1.24
208       - project: xtestingci
209         version: v1.23
210       - project: functest
211         version: v1.23
212       - project: xtesting
213         version: v1.23
214       - project: xtestingci
215         version: v1.22
216       - project: functest
217         version: v1.22
218       - project: xtesting
219         version: v1.22
220     jobs:
221       - '{project}-{version}-vm'
222
223 - view:
224     name: xtesting-ci-vm
225     view-type: list
226     columns:
227       - status
228       - weather
229       - job
230       - last-success
231       - last-failure
232       - last-duration
233     regex: ^.*-vm$