ee622ea4e4864134f823a2c8a29d8aa370d9f28d
[releng/builder.git] / jjb / releng-jobs.yaml
1 - project:
2     name: builder-jobs
3     jobs:
4         - 'builder-verify-jjb'
5         - 'builder-verify-python'
6         - 'builder-merge'
7
8 - job-template:
9     name: builder-verify-jjb
10
11     project-type: freestyle
12
13     logrotate:
14         daysToKeep: 30
15         numToKeep: 10
16         artifactDaysToKeep: -1
17         artifactNumToKeep: -1
18
19     parameters:
20         - gerrit-parameter:
21             branch: 'master'
22
23     scm:
24         - gerrit-trigger-scm:
25             credentials-id: '{ssh-credentials}'
26             scm-url: 'ssh://jenkins-releng@git.opendaylight.org:29418/releng/builder'
27             refspec: '$GERRIT_REFSPEC'
28             choosing-strategy: 'gerrit'
29
30     wrappers:
31         - ssh-agent-credentials:
32             user: '{ssh-credentials}'
33
34     triggers:
35         - gerrit:
36             trigger-on-patchset-uploaded-event: true
37             trigger-on-draft-published-event: true
38             projects:
39               - project-compare-type: 'ANT'
40                 project-pattern: 'releng/builder'
41                 branches:
42                   - branch-compare-type: 'ANT'
43                     branch-pattern: '**/master'
44                 file-paths:
45                     - compare-type: ANT
46                       pattern: jjb/**
47
48
49     builders:
50         - shell: |
51             source /opt/virtualenv/jenkins-job-builder/bin/activate
52             jenkins-jobs test jjb/
53
54     publishers:
55         - email-notification:
56             email-prefix: '[releng]'
57
58 - job-template:
59     name: builder-verify-python
60
61     project-type: freestyle
62
63     logrotate:
64         daysToKeep: 30
65         numToKeep: 10
66         artifactDaysToKeep: -1
67         artifactNumToKeep: -1
68
69     parameters:
70         - gerrit-parameter:
71             branch: 'master'
72
73     scm:
74         - gerrit-trigger-scm:
75             credentials-id: '{ssh-credentials}'
76             scm-url: 'ssh://jenkins-releng@git.opendaylight.org:29418/releng/builder'
77             refspec: '$GERRIT_REFSPEC'
78             choosing-strategy: 'gerrit'
79
80     wrappers:
81         - ssh-agent-credentials:
82             user: '{ssh-credentials}'
83
84     triggers:
85         - gerrit:
86             trigger-on-patchset-uploaded-event: true
87             trigger-on-draft-published-event: true
88             projects:
89               - project-compare-type: 'ANT'
90                 project-pattern: 'releng/builder'
91                 branches:
92                   - branch-compare-type: 'ANT'
93                     branch-pattern: '**/master'
94                 file-paths:
95                     - compare-type: ANT
96                       pattern: scripts/**
97
98
99     builders:
100         - shell: |
101             flake8 scripts/
102
103     publishers:
104         - email-notification:
105             email-prefix: '[releng]'
106
107 - job-template:
108     name: 'builder-merge'
109
110     # builder-merge job to run JJB update
111     #
112     # This job's purpose is to update all the JJB
113
114     project-type: freestyle
115
116     logrotate:
117         daysToKeep: 30
118         numToKeep: 40
119         artifactDaysToKeep: -1
120         artifactNumToKeep: 5
121
122     parameters:
123         - gerrit-parameter:
124             branch: 'master'
125
126     scm:
127         - gerrit-trigger-scm:
128             credentials-id: '{ssh-credentials}'
129             scm-url: 'ssh://jenkins-releng@git.opendaylight.org:29418/releng/builder'
130             refspec: ''
131             choosing-strategy: 'default'
132
133     wrappers:
134         - ssh-agent-credentials:
135             user: '{ssh-credentials}'
136
137     triggers:
138         - gerrit:
139             trigger-on-change-merged-event: true
140             projects:
141               - project-compare-type: 'ANT'
142                 project-pattern: 'releng/builder'
143                 branches:
144                     - branch-compare-type: 'ANT'
145                       branch-pattern: '**/master'
146                 file-paths:
147                     - compare-type: ANT
148                       pattern: jjb/**
149
150     builders:
151         - shell:
152             !include-raw-escape include-raw-jjb-update.sh
153
154     publishers:
155         - email-notification:
156             email-prefix: '[releng]'