Auto: Daily job definition
[releng.git] / jjb / xci / bifrost-verify-jobs.yaml
1 ---
2 - project:
3     name: 'openstack-bifrost-verify'
4     # -------------------------------
5     # branches
6     # -------------------------------
7     stream:
8       - master:
9           branch: '{stream}'
10     # -------------------------------
11     # distros
12     # -------------------------------
13     distro:
14       - 'xenial':
15           disabled: true
16           dib-os-release: 'xenial'
17           dib-os-element: 'ubuntu-minimal'
18           dib-os-packages: 'vlan,vim,less,bridge-utils,language-pack-en,iputils-ping,rsyslog,curl'
19           extra-dib-elements: 'openssh-server'
20       - 'centos7':
21           disabled: true
22           dib-os-release: '7'
23           dib-os-element: 'centos-minimal'
24           dib-os-packages: 'vim,less,bridge-utils,iputils,rsyslog,curl'
25           extra-dib-elements: 'openssh-server'
26       - 'opensuse423':
27           disabled: true
28           dib-os-release: '42.3'
29           dib-os-element: 'opensuse-minimal'
30           dib-os-packages: 'vim,less,bridge-utils,iputils,rsyslog,curl'
31           extra-dib-elements: 'openssh-server'
32     # -------------------------------
33     # type
34     # -------------------------------
35     type:
36       - virtual
37     # -------------------------------
38     # jobs
39     # -------------------------------
40     jobs:
41       - 'openstack-bifrost-verify-{distro}-{type}-{stream}'
42
43 # -------------------------------
44 # VM defaults
45 # -------------------------------
46 - defaults:
47     name: verify_vm_defaults
48     test-vm-num-nodes: '3'
49     test-vm-node-names: 'opnfv controller00 compute00'
50     vm-domain-type: 'kvm'
51     vm-cpu: '2'
52     vm-disk: '30'
53     vm-memory-size: '4096'
54     vm-disk-cache: 'unsafe'
55
56 # -------------------------------
57 # job templates
58 # -------------------------------
59 - job-template:
60     name: 'openstack-bifrost-verify-{distro}-{type}-{stream}'
61
62     disabled: '{obj:disabled}'
63
64     defaults: verify_vm_defaults
65
66     concurrent: false
67
68     properties:
69       - logrotate-default
70       - build-blocker:
71           use-build-blocker: true
72           blocking-jobs:
73             - 'xci-verify-{distro}-.*'
74             - 'xci-.*-{distro}-merge-.*'
75             - '.*-bifrost-verify.*-{type}'
76       - throttle:
77           max-per-node: 2
78           max-total: 10
79           categories:
80             - xci-verify-virtual
81           option: category
82
83           blocking-level: 'NODE'
84
85     parameters:
86       - string:
87           name: PROJECT_REPO
88           default: 'https://git.openstack.org/openstack/bifrost'
89       - string:
90           name: DISTRO
91           default: '{distro}'
92       - string:
93           name: DIB_OS_RELEASE
94           default: '{dib-os-release}'
95       - string:
96           name: DIB_OS_ELEMENT
97           default: '{dib-os-element}'
98       - string:
99           name: EXTRA_DIB_ELEMENTS
100           default: '{extra-dib-elements}'
101       - string:
102           name: DIB_OS_PACKAGES
103           default: '{dib-os-packages}'
104       - string:
105           name: TEST_VM_NUM_NODES
106           default: '{test-vm-num-nodes}'
107       - string:
108           name: TEST_VM_NODE_NAMES
109           default: '{test-vm-node-names}'
110       - string:
111           name: VM_DOMAIN_TYPE
112           default: '{vm-domain-type}'
113       - string:
114           name: VM_CPU
115           default: '{vm-cpu}'
116       - string:
117           name: VM_DISK
118           default: '{vm-disk}'
119       - string:
120           name: VM_MEMORY_SIZE
121           default: '{vm-memory-size}'
122       - string:
123           name: VM_DISK_CACHE
124           default: '{vm-disk-cache}'
125       - string:
126           name: CLEAN_DIB_IMAGES
127           default: 'true'
128       - label:
129           name: SLAVE_LABEL
130           default: 'xci-virtual'
131           all-nodes: false
132           node-eligibility: 'ignore-offline'
133       - string:
134           name: CI_LOOP
135           default: 'verify'
136
137     scm:
138       - git:
139           url: '$PROJECT_REPO'
140           refspec: '$GERRIT_REFSPEC'
141           branches:
142             - 'origin/$BRANCH'
143           skip-tag: true
144           choosing-strategy: 'gerrit'
145           timeout: 10
146           wipe-workspace: true
147
148     triggers:
149       - 'openstack-gerrit-trigger':
150           branch: '{branch}'
151
152     builders:
153       - bifrost-set-name
154       - bifrost-build
155
156     wrappers:
157       - fix-workspace-permissions
158       - build-timeout:
159           timeout: 180
160
161     publishers:
162       # yamllint disable rule:line-length
163       - email:
164           recipients: fatih.degirmenci@ericsson.com yroblamo@redhat.com mchandras@suse.de jack.morgan@intel.com julienjut@gmail.com
165       # yamllint enable rule:line-length
166       - email-jenkins-admins-on-failure
167       - postbuildscript:
168           builders:
169             - role: BOTH
170               build-on:
171                 - ABORTED
172                 - FAILURE
173                 - NOT_BUILT
174                 - SUCCESS
175                 - UNSTABLE
176               build-steps:
177                 - shell: !include-raw: ./xci-cleanup.sh
178           mark-unstable-if-failed: true
179
180 # -------------------------------
181 # trigger macros
182 # -------------------------------
183 - trigger:
184     name: 'openstack-gerrit-trigger'
185     triggers:
186       - gerrit:
187           server-name: 'review.openstack.org'
188           escape-quotes: true
189           trigger-on:
190             - patchset-created-event:
191                 exclude-drafts: 'false'
192                 exclude-trivial-rebase: 'false'
193                 exclude-no-code-change: 'false'
194             - comment-added-contains-event:
195                 comment-contains-value: 'recheck'
196           silent-start: true
197           custom-url: '* $JOB_NAME $BUILD_URL'
198           projects:
199             - project-compare-type: 'PLAIN'
200               project-pattern: 'openstack/bifrost'
201               branches:
202                 - branch-compare-type: 'ANT'
203                   branch-pattern: '**/{branch}'
204               disable-strict-forbidden-file-verification: 'true'
205               forbidden-file-paths:
206                 - compare-type: ANT
207                   pattern: 'doc/**'
208                 - compare-type: ANT
209                   pattern: 'releasenotes/**'
210           readable-message: true
211
212 # --------------------------
213 # builder macros
214 # --------------------------
215 - builder:
216     name: bifrost-set-name
217     builders:
218       - description-setter:
219           description: "Built on $NODE_NAME"
220
221 - builder:
222     name: bifrost-build
223     builders:
224       - shell:
225           !include-raw: ./bifrost-verify.sh