joid: Create jobs for virtual deployments in slave lf-virtual1
[releng.git] / jjb / joid / joid-ci-jobs.yml
1 ########################
2 # Job configuration for joid
3 ########################
4 - project:
5
6     name: 'joid'
7
8     project: '{name}'
9
10     installer: '{name}'
11
12 #--------------------------------
13 # BRANCH ANCHORS
14 #--------------------------------
15     master: &master
16         stream: master
17         branch: '{stream}'
18         gs-pathname: ''
19     brahmaputra: &brahmaputra
20         stream: brahmaputra
21         branch: 'stable/{stream}'
22         gs-pathname: '/{stream}'
23 #--------------------------------
24 # POD, INSTALLER, AND BRANCH MAPPING
25 #--------------------------------
26 #        brahmaputra
27 #--------------------------------
28     pod:
29         - intel-pod5:
30             <<: *brahmaputra
31         - virtual:
32             <<: *brahmaputra
33 #--------------------------------
34 #           master
35 #--------------------------------
36         - intel-pod6:
37             <<: *master
38         - orange-pod2:
39             <<: *master
40         - juniper-pod1:
41             <<: *master
42         - virtual:
43             <<: *master
44 #--------------------------------
45 # new scenario descriptions
46     scenario:
47         - 'os-nosdn-nofeature-noha':
48             auto-trigger-name: 'brahmaputra-trigger-daily-disabled'
49         - 'os-nosdn-nofeature-ha':
50             auto-trigger-name: 'brahmaputra-trigger-daily-disabled'
51         - 'os-odl_l2-nofeature-ha':
52             auto-trigger-name: 'joid-{scenario}-{pod}-trigger'
53         - 'os-odl_l2-nofeature-noha':
54             auto-trigger-name: 'brahmaputra-trigger-daily-disabled'
55         - 'os-onos-nofeature-ha':
56             auto-trigger-name: 'brahmaputra-trigger-daily-disabled'
57         - 'os-onos-nofeature-noha':
58             auto-trigger-name: 'brahmaputra-trigger-daily-disabled'
59         - 'os-ocl-nofeature-ha':
60             auto-trigger-name: 'brahmaputra-trigger-daily-disabled'
61         - 'os-ocl-nofeature-noha':
62             auto-trigger-name: 'brahmaputra-trigger-daily-disabled'
63
64     jobs:
65         - 'joid-{scenario}-{pod}-daily-{stream}'
66         - 'joid-deploy-{pod}-daily-{stream}'
67
68 ########################
69 # job templates
70 ########################
71 - job-template:
72     name: 'joid-{scenario}-{pod}-daily-{stream}'
73
74     project-type: multijob
75
76     node: intel-build
77
78     concurrent: false
79
80     properties:
81         - throttle:
82             enabled: true
83             max-total: 1
84             max-per-node: 1
85         - build-blocker:
86             use-build-blocker: true
87             blocking-jobs:
88                 - 'joid-os-.*?-{pod}-daily-{stream}'
89
90     wrappers:
91         - build-name:
92             name: '$BUILD_NUMBER - Scenario: $DEPLOY_SCENARIO'
93
94     triggers:
95         - '{auto-trigger-name}'
96
97     parameters:
98         - project-parameter:
99             project: '{project}'
100         - '{installer}-defaults'
101         - '{pod}-defaults'
102
103     builders:
104         - multijob:
105             name: deploy
106             condition: SUCCESSFUL
107             projects:
108                 - name: 'joid-deploy-{pod}-daily-{stream}'
109                   current-parameters: true
110                   kill-phase-on: FAILURE
111         - multijob:
112             name: functest
113             condition: COMPLETED
114             projects:
115                 - name: 'functest-joid-{pod}-daily-{stream}'
116                   current-parameters: true
117                   kill-phase-on: NEVER
118         - multijob:
119             name: yardstick
120             condition: COMPLETED
121             projects:
122                 - name: 'yardstick-joid-{pod}-daily-{stream}'
123                   current-parameters: true
124                   kill-phase-on: NEVER
125
126 - job-template:
127     name: 'joid-deploy-{pod}-daily-{stream}'
128
129     concurrent: false
130
131     properties:
132         - throttle:
133             enabled: true
134             max-total: 1
135             max-per-node: 1
136         - build-blocker:
137             use-build-blocker: true
138             blocking-jobs:
139                 - 'joid-deploy-{pod}-daily-{stream}'
140
141     wrappers:
142         - build-name:
143             name: '$BUILD_NUMBER - Scenario: $DEPLOY_SCENARIO'
144         - timeout:
145             timeout: 180
146             fail: true
147
148     parameters:
149         - project-parameter:
150             project: '{project}'
151         - '{installer}-defaults'
152         - '{pod}-defaults':
153             installer: '{installer}'
154
155     scm:
156         - git-scm:
157             credentials-id: '{ssh-credentials}'
158             refspec: ''
159             branch: '{branch}'
160
161     builders:
162         - 'builder-macro'
163 ########################
164 # builder macros
165 ########################
166 - builder:
167     name: 'builder-macro'
168     builders:
169         - shell: |
170             #!/bin/bash
171             echo "Running $INSTALLER_TYPE with controller $SDN_CONTROLLER"
172             echo
173             echo "------ First Executing clean.sh ------"
174             cd $WORKSPACE/ci
175             ./clean.sh
176         - shell:
177             !include-raw: ./joid-deploy.sh
178
179 ########################
180 # trigger macros
181 ########################
182 - trigger:
183     name: 'joid-os-odl_l2-nofeature-ha-intel-pod5-trigger'
184     triggers:
185         - timed: '0 2 * * *'
186 - trigger:
187     name: 'joid-os-odl_l2-nofeature-ha-intel-pod6-trigger'
188     triggers:
189         - timed: '0 2 * * *'
190 - trigger:
191     name: 'joid-os-odl_l2-nofeature-ha-orange-pod2-trigger'
192     triggers:
193         - timed: ''
194 - trigger:
195     name: 'joid-os-odl_l2-nofeature-ha-juniper-pod1-trigger'
196     triggers:
197         - timed: ''
198 - trigger:
199     name: 'joid-os-odl_l2-nofeature-ha-virtual-trigger'
200     triggers:
201         - timed: ''