jjb: xci: Fix permissions in workspace before removing it
[releng.git] / jjb / xci / xci-daily-jobs.yml
1 - project:
2     name: 'bifrost-osa-daily'
3 #--------------------------------
4 # BRANCH ANCHORS
5 #--------------------------------
6     master: &master
7         stream: master
8         openstack-branch: '{stream}'
9         opnfv-branch: 'master'
10         gs-pathname: ''
11     ocata: &ocata
12         stream: ocata
13         openstack-branch: 'stable/{stream}'
14         opnfv-branch: 'master'
15         gs-pathname: '/{stream}'
16 #--------------------------------
17 #       scenarios
18 #--------------------------------
19     scenario:
20         # HA scenarios
21         - 'os-nosdn-nofeature-ha':
22             auto-trigger-name: 'daily-trigger-disabled'
23 #--------------------------------
24 #        XCI PODs
25 #--------------------------------
26     pod:
27         - virtual:
28             <<: *master
29         - virtual:
30             <<: *ocata
31 #--------------------------------
32 #        Supported Distros
33 #--------------------------------
34     distro:
35         - 'xenial':
36             disabled: false
37             slave-label: xci-xenial-virtual
38             dib-os-release: 'xenial'
39             dib-os-element: 'ubuntu-minimal'
40             dib-os-packages: 'vlan,vim,less,bridge-utils,sudo,language-pack-en,iputils-ping,rsyslog,curl,python,debootstrap,ifenslave,ifenslave-2.6,lsof,lvm2,tcpdump,nfs-kernel-server,chrony'
41             extra-dib-elements: 'openssh-server'
42         - 'centos7':
43             disabled: true
44             slave-label: xci-centos7-virtual
45             dib-os-release: '7'
46             dib-os-element: 'centos7'
47             dib-os-packages: 'vim,less,bridge-utils,iputils,rsyslog,curl'
48             extra-dib-elements: 'openssh-server'
49         - 'suse':
50             disabled: true
51             slave-label: xci-suse-virtual
52             dib-os-release: '42.2'
53             dib-os-element: 'opensuse-minimal'
54             dib-os-packages: 'vim,less,bridge-utils,iputils,rsyslog,curl'
55             extra-dib-elements: 'openssh-server'
56 #--------------------------------
57 #        Phases
58 #--------------------------------
59     phase:
60         - 'provision'
61         - 'deploy'
62         - 'functest'
63 #--------------------------------
64 # jobs
65 #--------------------------------
66     jobs:
67         - 'xci-{scenario}-{pod}-{distro}-daily-{stream}'
68         - 'xci-{phase}-{pod}-{distro}-daily-{stream}'
69
70 #--------------------------------
71 # job templates
72 #--------------------------------
73 - job-template:
74     name: 'xci-{scenario}-{pod}-{distro}-daily-{stream}'
75
76     disabled: '{obj:disabled}'
77
78     concurrent: false
79
80     properties:
81         - build-blocker:
82             use-build-blocker: true
83             blocking-jobs:
84                 - '^xci-os.*'
85             block-level: 'NODE'
86         - logrotate-default
87
88     parameters:
89         - string:
90             name: DEPLOY_SCENARIO
91             default: '{scenario}'
92         - label:
93             name: SLAVE_LABEL
94             default: '{slave-label}'
95
96     triggers:
97         - '{auto-trigger-name}'
98
99     wrappers:
100         - xci-fix-perms-workspace
101
102     builders:
103         - description-setter:
104             description: "Built on $NODE_NAME"
105         - trigger-builds:
106             - project: 'xci-provision-{pod}-{distro}-daily-{stream}'
107               current-parameters: false
108               predefined-parameters:
109                 DEPLOY_SCENARIO={scenario}
110               same-node: true
111               block: true
112         - trigger-builds:
113             - project: 'xci-deploy-{pod}-{distro}-daily-{stream}'
114               current-parameters: false
115               predefined-parameters:
116                 DEPLOY_SCENARIO={scenario}
117               same-node: true
118               block: true
119         - trigger-builds:
120             - project: 'xci-functest-{pod}-{distro}-daily-{stream}'
121               current-parameters: false
122               predefined-parameters:
123                 DEPLOY_SCENARIO={scenario}
124               same-node: true
125               block: true
126               block-thresholds:
127                 build-step-failure-threshold: 'never'
128                 failure-threshold: 'never'
129                 unstable-threshold: 'FAILURE'
130
131     publishers:
132         - email:
133             recipients: fatih.degirmenci@ericsson.com yroblamo@redhat.com mchandras@suse.de jack.morgan@intel.com julienjut@gmail.com
134
135 - job-template:
136     name: 'xci-{phase}-{pod}-{distro}-daily-{stream}'
137
138     disabled: '{obj:disabled}'
139
140     concurrent: false
141
142     properties:
143         - build-blocker:
144             use-build-blocker: true
145             blocking-jobs:
146                 - '^xci-provision.*'
147                 - '^xci-deploy.*'
148                 - '^xci-functest.*'
149             block-level: 'NODE'
150         - logrotate-default
151
152     parameters:
153         - string:
154             name: OPENSTACK_BRANCH
155             default: '{openstack-branch}'
156         - string:
157             name: OPNFV_BRANCH
158             default: '{opnfv-branch}'
159         - string:
160             name: USE_PROMOTED_VERSIONS
161             default: 'true'
162         - string:
163             name: DEPLOY_SCENARIO
164             default: 'os-nosdn-nofeature-ha'
165         - string:
166             name: DISTRO
167             default: '{distro}'
168         - string:
169             name: DIB_OS_RELEASE
170             default: '{dib-os-release}'
171         - string:
172             name: DIB_OS_ELEMENT
173             default: '{dib-os-element}'
174         - string:
175             name: EXTRA_DIB_ELEMENTS
176             default: '{extra-dib-elements}'
177         - string:
178             name: DIB_OS_PACKAGES
179             default: '{dib-os-packages}'
180         - string:
181             name: CLEAN_DIB_IMAGES
182             default: 'true'
183         - label:
184             name: SLAVE_LABEL
185             default: '{slave-label}'
186
187     wrappers:
188         - xci-fix-perms-workspace
189
190     builders:
191         - description-setter:
192             description: "Built on $NODE_NAME - Scenario: $DEPLOY_SCENARIO"
193         - 'xci-{phase}-builder'
194
195 #---------------------------
196 # wrapper macros
197 #---------------------------
198 - wrapper:
199     name: xci-fix-perms-workspace
200     wrappers:
201         - pre-scm-buildstep:
202           - shell: |
203                 #!/bin/bash
204                 sudo -R chown $USER $WORKSPACE || exit 1
205
206 #---------------------------
207 # builder macros
208 #---------------------------
209 - builder:
210     name: xci-provision-builder
211     builders:
212         - shell:
213             !include-raw: ./xci-provision.sh
214 - builder:
215     name: xci-deploy-builder
216     builders:
217         - shell:
218             !include-raw: ./xci-deploy.sh
219 - builder:
220     name: xci-functest-builder
221     builders:
222         - shell:
223             !include-raw: ./xci-functest.sh