Merge "doctor: copy log file to 'tests' dir"
[releng.git] / jjb / releng / releng-ci-jobs.yml
1 - project:
2     name: releng-builder-jobs
3     jobs:
4         - 'releng-verify-jjb'
5         - 'releng-merge-jjb'
6         - 'releng-generate-artifacts-api'
7
8     project: 'releng'
9
10 - job-template:
11     name: releng-verify-jjb
12
13     parameters:
14         - project-parameter:
15             project: '{project}'
16         - gerrit-parameter:
17             branch: 'master'
18     scm:
19         - gerrit-trigger-scm:
20             credentials-id: '{ssh-credentials}'
21             refspec: '$GERRIT_REFSPEC'
22             choosing-strategy: 'gerrit'
23
24     triggers:
25         - gerrit:
26             server-name: 'gerrit.opnfv.org'
27             trigger-on:
28                 - patchset-created-event:
29                     exclude-drafts: 'false'
30                     exclude-trivial-rebase: 'false'
31                     exclude-no-code-change: 'false'
32                 - draft-published-event
33                 - comment-added-contains-event:
34                     comment-contains-value: 'recheck'
35                 - comment-added-contains-event:
36                     comment-contains-value: 'reverify'
37             projects:
38               - project-compare-type: 'ANT'
39                 project-pattern: 'releng'
40                 branches:
41                   - branch-compare-type: 'ANT'
42                     branch-pattern: '**/master'
43                 file-paths:
44                     - compare-type: ANT
45                       pattern: jjb/**
46                     - compare-type: ANT
47                       pattern: jjb-templates/**
48                     - compare-type: ANT
49                       pattern: utils/**
50
51
52     builders:
53         - shell:
54             !include-raw: verify-releng.sh
55
56     publishers:
57         - archive-artifacts:
58             artifacts: 'job_output/*'
59
60 - job-template:
61     name: 'releng-merge-jjb'
62
63     # builder-merge job to run JJB update
64     #
65     # This job's purpose is to update all the JJB
66
67     parameters:
68         - project-parameter:
69             project: '{project}'
70         - gerrit-parameter:
71             branch: 'master'
72
73     scm:
74         - gerrit-trigger-scm:
75             credentials-id: '{ssh-credentials}'
76             refspec: ''
77             choosing-strategy: 'default'
78
79     triggers:
80         - gerrit:
81             server-name: 'gerrit.opnfv.org'
82             trigger-on:
83                 - change-merged-event
84                 - comment-added-contains-event:
85                     comment-contains-value: 'remerge'
86             projects:
87               - project-compare-type: 'ANT'
88                 project-pattern: 'releng'
89                 branches:
90                     - branch-compare-type: 'ANT'
91                       branch-pattern: '**/master'
92                 file-paths:
93                     - compare-type: ANT
94                       pattern: jjb/**
95                     - compare-type: ANT
96                       pattern: utils/**
97
98     builders:
99         - shell: |
100                 source /opt/virtualenv/jenkins-job-builder/bin/activate
101                 cd /opt/jenkins-ci/releng
102                 git pull
103                 jenkins-jobs update -r --delete-old jjb/
104
105 - job-template:
106     name: 'releng-generate-artifacts-api'
107
108     # Generate and upload the JSON file to used for artifacts site
109
110     parameters:
111         - project-parameter:
112             project: '{project}'
113         - gerrit-parameter:
114             branch: 'master'
115
116     scm:
117         - gerrit-trigger-scm:
118             credentials-id: '{ssh-credentials}'
119             refspec: ''
120             choosing-strategy: 'default'
121
122     triggers:
123         - timed: '@hourly'
124
125     builders:
126         - build-and-upload-artifacts-json-api