update versions under scenario
[releng.git] / jjb / compass4nfv / compass-dovetail-jobs.yml
1 - project:
2
3     name: 'compass-dovetail-jobs'
4     installer: 'compass'
5     project: 'compass4nfv'
6 #----------------------------------
7 # BRANCH ANCHORS
8 #----------------------------------
9     danube: &danube
10         stream: danube
11         branch: 'stable/{stream}'
12         gs-pathname: '/{stream}'
13         disabled: false
14         dovetail-branch: master
15 #------------------------------------
16 # POD, INSTALLER, AND BRANCH MAPPING
17 #------------------------------------
18 #        CI PODs
19 #------------------------------------
20     pod:
21         - baremetal:
22             slave-label: compass-baremetal
23             os-version: 'xenial'
24             <<: *danube
25 #-----------------------------------
26 # scenarios
27 #-----------------------------------
28     scenario:
29         - 'os-nosdn-nofeature-ha':
30             disabled: true
31             auto-trigger-name: 'compass-{scenario}-{pod}-weekly-{stream}-trigger'
32
33     jobs:
34         - 'compass-{scenario}-{pod}-weekly-{stream}'
35         - 'compass-deploy-{pod}-weekly-{stream}'
36
37 ########################
38 # job templates
39 ########################
40 - job-template:
41     name: 'compass-{scenario}-{pod}-weekly-{stream}'
42
43     disabled: '{obj:disabled}'
44
45     concurrent: false
46
47     properties:
48         - build-blocker:
49             use-build-blocker: true
50             blocking-jobs:
51                 - 'compass-os-.*?-{pod}-daily-.*?'
52                 - 'compass-os-.*?-{pod}-weekly-.*?'
53             block-level: 'NODE'
54
55     wrappers:
56         - build-name:
57             name: '$BUILD_NUMBER - Scenario: $DEPLOY_SCENARIO'
58         - fix-workspace-permissions
59
60     triggers:
61         - '{auto-trigger-name}'
62
63     parameters:
64         - project-parameter:
65             project: '{project}'
66             branch: '{branch}'
67         - compass-dovetail-parameter:
68             installer: '{installer}'
69             gs-pathname: '{gs-pathname}'
70         - string:
71             name: DEPLOY_SCENARIO
72             default: '{scenario}'
73         - '{slave-label}-defaults'
74         - '{installer}-defaults'
75
76     triggers:
77         - '{auto-trigger-name}'
78
79     builders:
80         - description-setter:
81             description: "POD: $NODE_NAME"
82         - trigger-builds:
83             - project: 'compass-deploy-{pod}-weekly-{stream}'
84               current-parameters: false
85               predefined-parameters: |
86                 DEPLOY_SCENARIO={scenario}
87                 COMPASS_OS_VERSION={os-version}
88               same-node: true
89               block: true
90         - trigger-builds:
91             - project: 'dovetail-compass-{pod}-compliance_set-weekly-{stream}'
92               current-parameters: false
93               predefined-parameters:
94                 DEPLOY_SCENARIO={scenario}
95               block: true
96               same-node: true
97               block-thresholds:
98                 build-step-failure-threshold: 'never'
99                 failure-threshold: 'never'
100                 unstable-threshold: 'FAILURE'
101         - trigger-builds:
102             - project: 'dovetail-compass-{pod}-proposed_tests-weekly-{stream}'
103               current-parameters: false
104               predefined-parameters:
105                 DEPLOY_SCENARIO={scenario}
106               block: true
107               same-node: true
108               block-thresholds:
109                 build-step-failure-threshold: 'never'
110                 failure-threshold: 'never'
111                 unstable-threshold: 'FAILURE'
112
113 - job-template:
114     name: 'compass-deploy-{pod}-weekly-{stream}'
115
116     disabled: false
117
118     concurrent: true
119
120     properties:
121         - logrotate-default
122         - throttle:
123             enabled: true
124             max-total: 4
125             max-per-node: 1
126             option: 'project'
127         - build-blocker:
128             use-build-blocker: true
129             blocking-jobs:
130                 - 'compass-deploy-{pod}-daily-.*?'
131                 - 'compass-deploy-{pod}-weekly-.*'
132                 - 'compass-verify-deploy-.*?'
133             block-level: 'NODE'
134
135     wrappers:
136         - build-name:
137             name: '$BUILD_NUMBER - Scenario: $DEPLOY_SCENARIO'
138         - timeout:
139             timeout: 240
140             abort: true
141         - fix-workspace-permissions
142
143     parameters:
144         - project-parameter:
145             project: '{project}'
146             branch: '{branch}'
147         - compass-dovetail-parameter:
148             installer: '{installer}'
149             gs-pathname: '{gs-pathname}'
150         - '{slave-label}-defaults'
151         - '{installer}-defaults'
152
153     scm:
154         - git-scm
155
156     builders:
157         - description-setter:
158             description: "POD: $NODE_NAME"
159         - shell:
160             !include-raw-escape: ./compass-download-artifact.sh
161         - shell:
162             !include-raw-escape: ./compass-deploy.sh
163
164 ########################
165 # parameter macros
166 ########################
167 - parameter:
168     name: compass-dovetail-parameter
169     parameters:
170         - string:
171             name: BUILD_DIRECTORY
172             default: $WORKSPACE/build_output
173             description: "Directory where the build artifact will be located upon the completion of the build."
174         - string:
175             name: GS_URL
176             default: '$GS_BASE{gs-pathname}'
177             description: "URL to Google Storage."
178         - choice:
179             name: COMPASS_OPENSTACK_VERSION
180             choices:
181                 - 'newton'
182
183 ########################
184 # trigger macros
185 ########################
186 - trigger:
187     name: 'compass-os-nosdn-nofeature-ha-baremetal-weekly-danube-trigger'
188     triggers:
189         - timed: 'H H * * 0'
190
191 - trigger:
192     name: 'dovetail-weekly-trigger'
193     triggers:
194         - timed: 'H H * * 0'