57adc7ba4c22de5b666d9b5f0d741e74f2388b16
[releng.git] / jjb / fuel / fuel-ci-jobs.yml
1 - project:
2
3     name: 'fuel'
4
5     project: 'fuel'
6
7     installer: 'fuel'
8
9 #--------------------------------
10 # BRANCH ANCHORS
11 #--------------------------------
12     master: &master
13         stream: master
14         branch: '{stream}'
15         gs-pathname: ''
16     brahmaputra: &brahmaputra
17         stream: brahmaputra
18         branch: 'stable/{stream}'
19         gs-pathname: '/{stream}'
20 #--------------------------------
21 # POD, INSTALLER, AND BRANCH MAPPING
22 #--------------------------------
23 #      Current Mapping
24 #--------------------------------
25 #  everything runs against master branch
26 #--------------------------------
27     pod:
28         - opnfv-jump-2:
29             <<: *master
30         - ericsson-pod1:
31             <<: *master
32         - ericsson-pod2:
33             <<: *master
34 #--------------------------------
35 #     Milestone E Mapping
36 #     !!!DO NOT ENABLE!!!
37 #--------------------------------
38 #        brahmaputra
39 #--------------------------------
40 #        - opnfv-jump-2:
41 #            <<: *brahmaputra
42
43 # please check the triggers before enabling any of the controllers!!!
44     sdn-controller:
45         - 'nosdn':
46             disabled: false
47         - 'odl':
48             disabled: true
49         - 'onos':
50             disabled: true
51         - 'opencontrail':
52             disabled: true
53
54     jobs:
55         - 'fuel-{sdn-controller}-{pod}-daily-{stream}'
56         - 'fuel-build-{pod}-daily-{stream}'
57         - 'fuel-deploy-{pod}-daily-{stream}'
58
59 ########################
60 # job templates
61 ########################
62 - job-template:
63     name: 'fuel-{sdn-controller}-{pod}-daily-{stream}'
64
65     project-type: multijob
66
67     disabled: '{obj:disabled}'
68
69     concurrent: false
70
71     wrappers:
72         - build-name:
73             name: '$BUILD_NUMBER - SDN: $SDN_CONTROLLER Feature: $OPNFV_FEATURE'
74
75     triggers:
76         - 'fuel-{pod}-trigger'
77
78     parameters:
79         - project-parameter:
80             project: '{project}'
81         - '{pod}-defaults'
82         - '{installer}-defaults'
83         - string:
84             name: SDN_CONTROLLER
85             default: '{sdn-controller}'
86         - string:
87             name: OPNFV_FEATURE
88             default: 'none'
89         - fuel-ci-parameter:
90             gs-pathname: '{gs-pathname}'
91
92     scm:
93         - git-scm:
94             credentials-id: '{ssh-credentials}'
95             refspec: ''
96             branch: '{branch}'
97
98     builders:
99         - multijob:
100             name: build
101             condition: SUCCESSFUL
102             projects:
103                 - name: 'fuel-build-{pod}-daily-{stream}'
104                   current-parameters: true
105                   git-revision: true
106                   kill-phase-on: FAILURE
107         - multijob:
108             name: deploy
109             condition: SUCCESSFUL
110             projects:
111                 - name: 'fuel-deploy-{pod}-daily-{stream}'
112                   current-parameters: true
113                   git-revision: true
114                   kill-phase-on: FAILURE
115         - multijob:
116             name: functest
117             condition: COMPLETED
118             projects:
119                 - name: 'functest-fuel-{pod}-daily-{stream}'
120                   current-parameters: true
121                   kill-phase-on: NEVER
122         - multijob:
123             name: yardstick
124             condition: COMPLETED
125             projects:
126                 - name: 'yardstick-fuel-{pod}-daily-{stream}'
127                   current-parameters: true
128                   kill-phase-on: NEVER
129
130 - job-template:
131     name: 'fuel-build-{pod}-daily-{stream}'
132
133     parameters:
134         - project-parameter:
135             project: '{project}'
136         - 'ericsson-ca-build-1-defaults'
137         - fuel-ci-parameter:
138             gs-pathname: '{gs-pathname}'
139
140     scm:
141         - git-scm:
142             credentials-id: '{ssh-credentials}'
143             refspec: ''
144             branch: '{branch}'
145
146     wrappers:
147         - timeout:
148             timeout: 360
149             fail: true
150
151     builders:
152         - shell:
153             !include-raw ./fuel-build.sh
154         - shell:
155             !include-raw ./fuel-upload-artifact.sh
156         - shell:
157             !include-raw ./fuel-workspace-cleanup.sh
158
159     publishers:
160         - email:
161             recipients: jonas.bjurel@ericsson.com stefan.k.berg@ericsson.com
162
163 - job-template:
164     name: 'fuel-deploy-{pod}-daily-{stream}'
165
166     parameters:
167         - project-parameter:
168             project: '{project}'
169         - '{pod}-defaults'
170         - fuel-ci-parameter:
171             gs-pathname: '{gs-pathname}'
172
173     scm:
174         - git-scm:
175             credentials-id: '{ssh-credentials}'
176             refspec: ''
177             branch: '{branch}'
178
179     builders:
180         - shell:
181             !include-raw ./fuel-download-artifact.sh
182         - shell:
183             !include-raw ./fuel-deploy.sh
184
185     publishers:
186         - email:
187             recipients: jonas.bjurel@ericsson.com stefan.k.berg@ericsson.com
188 ########################
189 # parameter macros
190 ########################
191 - parameter:
192     name: fuel-ci-parameter
193     parameters:
194         - string:
195             name: BUILD_DIRECTORY
196             default: $WORKSPACE/build_output
197             description: "Directory where the build artifact will be located upon the completion of the build."
198         - string:
199             name: CACHE_DIRECTORY
200             default: $HOME/opnfv/cache/$INSTALLER_TYPE
201             description: "Directory where the cache to be used during the build is located."
202         - string:
203             name: GS_URL
204             default: artifacts.opnfv.org/$PROJECT{gs-pathname}
205             description: "URL to Google Storage."
206 ########################
207 # trigger macros
208 ########################
209 # trigger for opnfv-jump-2 is set to run 1 hour ahead of others
210 # to prevent doing unnecessary builds
211 - trigger:
212     name: 'fuel-opnfv-jump-2-trigger'
213     triggers:
214         - timed: '0 2 * * *'
215 - trigger:
216     name: 'fuel-ericsson-pod1-trigger'
217     triggers:
218         - timed: '0 3 * * *'
219 - trigger:
220     name: 'fuel-ericsson-pod2-trigger'
221     triggers:
222         - timed: '0 3 * * *'