Publish Functest VM to jerma
[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: '@daily'
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.1':
84           ref: stable/2023.1
85           role-version: master
86       - zed:
87           ref: stable/zed
88           role-version: master
89       - yoga:
90           ref: stable/yoga
91           role-version: master
92       - xena:
93           ref: stable/xena
94           role-version: master
95       - wallaby:
96           ref: stable/wallaby
97           role-version: master
98       - leguer:
99           ref: stable/leguer
100           role-version: master
101       - kali:
102           ref: stable/kali
103           role-version: master
104       - jerma:
105           ref: stable/jerma
106           role-version: master
107       - v1.26:
108           ref: stable/v1.26
109           role-version: master
110       - v1.25:
111           ref: stable/v1.25
112           role-version: master
113       - v1.24:
114           ref: stable/v1.24
115           role-version: master
116       - v1.23:
117           ref: stable/v1.23
118           role-version: master
119       - v1.22:
120           ref: stable/v1.22
121           role-version: master
122     exclude:
123       - project: xtestingci
124         version: '2023.1'
125       - project: functest
126         version: '2023.1'
127       - project: functest-kubernetes
128         version: '2023.1'
129       - project: xtestingci
130         version: zed
131       - project: functest-kubernetes
132         version: zed
133       - project: xtestingci
134         version: yoga
135       - project: functest-kubernetes
136         version: yoga
137       - project: xtestingci
138         version: xena
139       - project: functest-kubernetes
140         version: xena
141       - project: xtestingci
142         version: wallaby
143       - project: functest-kubernetes
144         version: wallaby
145       - project: xtestingci
146         version: leguer
147       - project: xtesting
148         version: leguer
149       - project: functest-kubernetes
150         version: leguer
151       - project: xtestingci
152         version: kali
153       - project: xtesting
154         version: kali
155       - project: functest-kubernetes
156         version: kali
157       - project: xtestingci
158         version: jerma
159       - project: xtesting
160         version: jerma
161       - project: functest-kubernetes
162         version: jerma
163       - project: xtestingci
164         version: v1.26
165       - project: functest
166         version: v1.26
167       - project: functest-xtesting
168         version: v1.26
169       - project: xtestingci
170         version: v1.25
171       - project: functest
172         version: v1.25
173       - project: functest-xtesting
174         version: v1.25
175       - project: xtestingci
176         version: v1.24
177       - project: functest
178         version: v1.24
179       - project: functest-xtesting
180         version: v1.24
181       - project: xtestingci
182         version: v1.23
183       - project: functest
184         version: v1.23
185       - project: functest-xtesting
186         version: v1.23
187       - project: xtestingci
188         version: v1.22
189       - project: functest
190         version: v1.22
191       - project: functest-xtesting
192         version: v1.22
193     jobs:
194       - '{project}-{version}-vm'
195
196 - view:
197     name: xtesting-ci-vm
198     view-type: list
199     columns:
200       - status
201       - weather
202       - job
203       - last-success
204       - last-failure
205       - last-duration
206     regex: ^.*-vm$