Allow jobs ot use build2 while build1 is down
[releng.git] / jjb / releng / releng-release-jobs.yaml
1 # SPDX-License-Identifier: Apache-2.0
2 ##############################################################################
3 # Copyright (c) 2018 The Linux Foundation and others.
4 # All rights reserved. This program and the accompanying materials
5 # are made available under the terms of the Apache License, Version 2.0
6 # which accompanies this distribution, and is available at
7 # http://www.apache.org/licenses/LICENSE-2.0
8 ##############################################################################
9 ---
10 - project:
11     name: releng-release-jobs
12
13     build-node: 'opnfv-build'
14
15     stream:
16       - fraser
17       - gambia
18       - hunter
19       - iruya
20       - jerma
21       - kali
22       - leguer
23
24     jobs:
25       - 'releng-release-{stream}-verify'
26       - 'releng-release-{stream}-merge'
27
28     project: 'releng'
29
30 - job-template:
31     name: 'releng-release-{stream}-verify'
32
33     parameters:
34       - '{build-node}-defaults'
35       - stream-parameter:
36           stream: '{stream}'
37       - project-parameter:
38           project: '{project}'
39           branch: 'master'
40
41     scm:
42       - git-scm-gerrit
43
44     triggers:
45       - gerrit:
46           server-name: 'gerrit.opnfv.org'
47           trigger-on:
48             - patchset-created-event:
49                 exclude-drafts: 'false'
50                 exclude-trivial-rebase: 'false'
51                 exclude-no-code-change: 'false'
52             - comment-added-contains-event:
53                 comment-contains-value: 'recheck'
54             - comment-added-contains-event:
55                 comment-contains-value: 'reverify'
56           projects:
57             - project-compare-type: 'ANT'
58               project-pattern: 'releng'
59               branches:
60                 - branch-compare-type: 'ANT'
61                   branch-pattern: '**/master'
62               file-paths:
63                 - compare-type: ANT
64                   pattern: 'releases/{stream}/**'
65                 - compare-type: ANT
66                   pattern: 'releases/schema.yaml'
67                 - compare-type: ANT
68                   pattern: 'releases/scripts/verify_schema.py'
69
70     builders:
71       - shell: !include-raw-escape:
72           - releng-release-create-venv.sh
73           - branch-or-tag.sh
74
75     publishers:
76       - email-jenkins-admins-on-failure
77
78 - job-template:
79     name: 'releng-release-{stream}-merge'
80
81     parameters:
82       - node:
83           name: SLAVE_NAME
84           description: 'Only run merge job on build1 or 2'
85           default-slaves:
86             - lf-build1
87             - lf-build2
88           allowed-multiselect: false
89           ignore-offline-nodes: true
90       - stream-parameter:
91           stream: '{stream}'
92       - project-parameter:
93           project: '{project}'
94           branch: 'master'
95       # Override GIT_URL so we can send patches back to Gerrit and
96       # modify repos
97       - string:
98           name: GIT_URL
99           default: ssh://$USER@gerrit.opnfv.org:29418/
100           description: 'Git URL to use on this Jenkins Slave'
101
102     scm:
103       - git-scm-gerrit
104
105     triggers:
106       - gerrit-trigger-change-merged:
107           project: '{project}'
108           branch: 'master'
109           files: 'releases/{stream}/*'
110
111     builders:
112       - shell: !include-raw-escape:
113           - releng-release-create-venv.sh
114           - branch-or-tag.sh
115
116     publishers:
117       - email-jenkins-admins-on-failure
118
119 - parameter:
120     name: stream-parameter
121     parameters:
122       - string:
123           name: STREAM
124           default: '{stream}'
125           description: "OPNFV Stable Stream"