fd95fd47f4c38ef3f57fe5a2b2fcc9605d672604
[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       - v1.26:
99           ref: stable/v1.26
100           role-version: master
101       - v1.25:
102           ref: stable/v1.25
103           role-version: master
104       - v1.24:
105           ref: stable/v1.24
106           role-version: master
107       - v1.23:
108           ref: stable/v1.23
109           role-version: master
110       - v1.22:
111           ref: stable/v1.22
112           role-version: master
113     exclude:
114       - project: xtestingci
115         version: '2023.1'
116       - project: functest
117         version: '2023.1'
118       - project: functest-kubernetes
119         version: '2023.1'
120       - project: xtestingci
121         version: zed
122       - project: functest-kubernetes
123         version: zed
124       - project: xtestingci
125         version: yoga
126       - project: functest-kubernetes
127         version: yoga
128       - project: xtestingci
129         version: xena
130       - project: functest-kubernetes
131         version: xena
132       - project: xtestingci
133         version: wallaby
134       - project: functest-kubernetes
135         version: wallaby
136       - project: xtestingci
137         version: v1.26
138       - project: functest
139         version: v1.26
140       - project: functest-xtesting
141         version: v1.26
142       - project: xtestingci
143         version: v1.25
144       - project: functest
145         version: v1.25
146       - project: functest-xtesting
147         version: v1.25
148       - project: xtestingci
149         version: v1.24
150       - project: functest
151         version: v1.24
152       - project: functest-xtesting
153         version: v1.24
154       - project: xtestingci
155         version: v1.23
156       - project: functest
157         version: v1.23
158       - project: functest-xtesting
159         version: v1.23
160       - project: xtestingci
161         version: v1.22
162       - project: functest
163         version: v1.22
164       - project: functest-xtesting
165         version: v1.22
166     jobs:
167       - '{project}-{version}-vm'
168
169 - view:
170     name: xtesting-ci-vm
171     view-type: list
172     columns:
173       - status
174       - weather
175       - job
176       - last-success
177       - last-failure
178       - last-duration
179     regex: ^.*-vm$