Merge "Refactored docker watchdog code"
[releng.git] / jjb / fuel / fuel-project-jobs.yml
1 ########################
2 # Job configuration for fuel
3 ########################
4 - project:
5     name: fuel-project-jobs
6
7     project: 'fuel'
8
9     installer: 'fuel'
10
11     stream:
12         - master:
13             branch: '{stream}'
14             gs-pathname: ''
15             disabled: false
16         - euphrates:
17             branch: 'stable/{stream}'
18             gs-pathname: '/{stream}'
19             disabled: true
20
21     jobs:
22         - 'fuel-merge-deploy-virtual-{stream}'
23         - 'fuel-deploy-generic-daily-{stream}'
24
25 ########################
26 # job templates
27 ########################
28 - job-template:
29     name: 'fuel-merge-deploy-virtual-{stream}'
30
31     disabled: true
32
33     concurrent: true
34
35     properties:
36         - logrotate-default
37         - throttle:
38             enabled: true
39             max-total: 2
40             max-per-node: 1
41             option: 'project'
42         - build-blocker:
43             use-build-blocker: true
44             blocking-jobs:
45                 - 'fuel-os-.*?-virtual-daily-.*'
46                 - 'fuel-merge-deploy-virtual-.*'
47             block-level: 'NODE'
48
49     parameters:
50         - project-parameter:
51             project: '{project}'
52             branch: '{branch}'
53         - 'fuel-virtual-defaults':
54             installer: '{installer}'
55         - '{installer}-defaults'
56         - fuel-project-parameter:
57             gs-pathname: '{gs-pathname}'
58     scm:
59         - git-scm
60
61     wrappers:
62         - ssh-agent-wrapper
63
64     triggers:
65         - gerrit:
66             server-name: 'gerrit.opnfv.org'
67             trigger-on:
68                 - change-merged-event
69                 - comment-added-contains-event:
70                     comment-contains-value: 'remerge'
71             projects:
72               - project-compare-type: 'ANT'
73                 project-pattern: '{project}'
74                 branches:
75                     - branch-compare-type: 'ANT'
76                       branch-pattern: '**/{branch}'
77                 file-paths:
78                   - compare-type: ANT
79                     pattern: 'ci/**'
80                   - compare-type: ANT
81                     pattern: 'mcp/**'
82                 disable-strict-forbidden-file-verification: 'true'
83                 forbidden-file-paths:
84                   - compare-type: ANT
85                     pattern: 'docs/**'
86             dependency-jobs: 'fuel-merge-build-{stream}'
87
88     builders:
89         - shell:
90             !include-raw-escape: ./fuel-deploy.sh
91         - shell:
92             !include-raw-escape: ./fuel-workspace-cleanup.sh
93
94     publishers:
95         - email:
96             recipients: fzhadaev@mirantis.com
97         - email-jenkins-admins-on-failure
98
99 - job-template:
100     name: 'fuel-deploy-generic-daily-{stream}'
101
102     concurrent: true
103
104     disabled: '{obj:disabled}'
105
106     properties:
107         - logrotate-default
108         - throttle:
109             enabled: true
110             max-per-node: 1
111             option: 'project'
112         - build-blocker:
113             use-build-blocker: true
114             blocking-jobs:
115                 - 'fuel-os-.*?-daily-.*'
116                 - 'fuel-deploy-generic-daily-.*'
117             block-level: 'NODE'
118
119     parameters:
120         - project-parameter:
121             project: '{project}'
122             branch: '{branch}'
123         - '{installer}-defaults'
124         - string:
125             name: GIT_BASE
126             default: https://gerrit.opnfv.org/gerrit/$PROJECT
127             description: 'Git URL to use on this Jenkins Slave'
128         - string:
129             name: DEPLOY_SCENARIO
130             default: 'os-odl_l2-nofeature-ha'
131         - node:
132             name: SLAVE_NAME
133             description: 'Slave name on Jenkins'
134             allowed-slaves:
135                 - ericsson-pod2
136                 - lf-pod2
137                 - ericsson-pod1
138             default-slaves:
139                 - ericsson-pod2
140         - fuel-project-parameter:
141             gs-pathname: '{gs-pathname}'
142
143     scm:
144         - git-scm
145
146     wrappers:
147         - build-name:
148             name: '$BUILD_NUMBER - POD: $NODE_NAME Scenario: $DEPLOY_SCENARIO'
149
150     builders:
151         - shell:
152             !include-raw-escape: ./fuel-deploy.sh
153
154 ########################
155 # parameter macros
156 ########################
157 - parameter:
158     name: fuel-project-parameter
159     parameters:
160         - string:
161             name: GS_URL
162             default: artifacts.opnfv.org/$PROJECT{gs-pathname}
163             description: "URL to Google Storage."