188810abab3491f15650eb04af3e1e3dc114d4d6
[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       - v1.21
24       - wallaby
25       - v1.22
26       - xena
27
28     jobs:
29       - 'releng-release-{stream}-verify'
30       - 'releng-release-{stream}-merge'
31
32     project: 'releng'
33
34 - job-template:
35     name: 'releng-release-{stream}-verify'
36
37     parameters:
38       - '{build-node}-defaults'
39       - stream-parameter:
40           stream: '{stream}'
41       - project-parameter:
42           project: '{project}'
43           branch: 'master'
44
45     scm:
46       - git-scm-gerrit
47
48     triggers:
49       - gerrit:
50           server-name: 'gerrit.opnfv.org'
51           trigger-on:
52             - patchset-created-event:
53                 exclude-drafts: 'false'
54                 exclude-trivial-rebase: 'false'
55                 exclude-no-code-change: 'false'
56             - comment-added-contains-event:
57                 comment-contains-value: 'recheck'
58             - comment-added-contains-event:
59                 comment-contains-value: 'reverify'
60           projects:
61             - project-compare-type: 'ANT'
62               project-pattern: 'releng'
63               branches:
64                 - branch-compare-type: 'ANT'
65                   branch-pattern: '**/master'
66               file-paths:
67                 - compare-type: ANT
68                   pattern: 'releases/{stream}/**'
69                 - compare-type: ANT
70                   pattern: 'releases/schema.yaml'
71                 - compare-type: ANT
72                   pattern: 'releases/scripts/verify_schema.py'
73
74     builders:
75       - shell: !include-raw-escape:
76           - releng-release-create-venv.sh
77           - branch-or-tag.sh
78
79     publishers:
80       - email-jenkins-admins-on-failure
81
82 - job-template:
83     name: 'releng-release-{stream}-merge'
84
85     parameters:
86       - node:
87           name: SLAVE_NAME
88           description: 'Only run merge job on build5 or 6'
89           default-slaves:
90             - lf-build5
91             - lf-build6
92           allowed-multiselect: false
93           ignore-offline-nodes: true
94       - stream-parameter:
95           stream: '{stream}'
96       - project-parameter:
97           project: '{project}'
98           branch: 'master'
99       # Override GIT_URL so we can send patches back to Gerrit and
100       # modify repos
101       - string:
102           name: GIT_URL
103           default: ssh://$USER@gerrit.opnfv.org:29418/
104           description: 'Git URL to use on this Jenkins Slave'
105
106     scm:
107       - git-scm-gerrit
108
109     triggers:
110       - gerrit-trigger-change-merged:
111           project: '{project}'
112           branch: 'master'
113           files: 'releases/{stream}/*'
114
115     builders:
116       - shell: !include-raw-escape:
117           - releng-release-create-venv.sh
118           - branch-or-tag.sh
119
120     publishers:
121       - email-jenkins-admins-on-failure
122
123 - parameter:
124     name: stream-parameter
125     parameters:
126       - string:
127           name: STREAM
128           default: '{stream}'
129           description: "OPNFV Stable Stream"