87b03626efe9f8e0cc7678c33578d1cd90aac29a
[releng.git] / jjb / releng / opnfv-docker.yml
1 ##############################################
2 # job configuration for docker build and push
3 ##############################################
4
5 - project:
6
7     name: opnfv-docker
8
9     master: &master
10         stream: master
11         branch: '{stream}'
12         disabled: false
13     danube: &danube
14         stream: danube
15         branch: 'stable/{stream}'
16         disabled: true
17     functest-receivers: &functest-receivers
18         receivers: >
19             jose.lausuch@ericsson.com morgan.richomme@orange.com
20             cedric.ollivier@orange.com feng.xiaowei@zte.com.cn
21             yaohelan@huawei.com helanyao@gmail.com
22             juha.kosonen@nokia.com
23     other-receivers: &other-receivers
24         receivers: ''
25
26     project:
27         # projects with jobs for master
28         - 'bottlenecks':
29             <<: *master
30             <<: *other-receivers
31         - 'cperf':
32             <<: *master
33             <<: *other-receivers
34         - 'dovetail':
35             <<: *master
36             <<: *other-receivers
37         - 'functest':
38             <<: *master
39             <<: *functest-receivers
40         - 'qtip':
41             <<: *master
42             <<: *other-receivers
43         - 'storperf':
44             <<: *master
45             <<: *other-receivers
46         - 'yardstick':
47             <<: *master
48             <<: *other-receivers
49         # projects with jobs for stable
50         - 'bottlenecks':
51             <<: *danube
52             <<: *other-receivers
53         - 'functest':
54             <<: *danube
55             <<: *functest-receivers
56         - 'storperf':
57             <<: *danube
58             <<: *other-receivers
59         - 'yardstick':
60             <<: *danube
61             <<: *other-receivers
62
63     jobs:
64         - '{project}-docker-build-push-{stream}'
65
66
67 - project:
68
69     name: opnfv-monitor-docker        # projects which only monitor dedicated file or path
70
71     project:
72         # projects with jobs for master
73         - 'daisy':
74             <<: *master
75
76     jobs:
77         - '{project}-docker-build-push-monitor-{stream}'
78
79 ########################
80 # job templates
81 ########################
82 - job-template:
83     name: '{project}-docker-build-push-{stream}'
84
85     disabled: '{obj:disabled}'
86
87     parameters: &parameters
88         - project-parameter:
89             project: '{project}'
90         - gerrit-parameter:
91             branch: '{branch}'
92         - 'opnfv-build-ubuntu-defaults'
93         - string:
94             name: PUSH_IMAGE
95             default: "true"
96             description: "To enable/disable pushing the image to Dockerhub."
97         - string:
98             name: DOCKER_REPO_NAME
99             default: "opnfv/{project}"
100             description: "Dockerhub repo to be pushed to."
101         - string:
102             name: RELEASE_VERSION
103             default: ""
104             description: "Release version, e.g. 1.0, 2.0, 3.0"
105
106     scm:
107         - git-scm
108
109     builders: &builders
110         - shell:
111             !include-raw-escape: ./opnfv-docker.sh
112
113     triggers:
114         - pollscm:
115             cron: "*/30 * * * *"
116
117     publishers:
118         - email:
119             recipients: '{receivers}'
120
121 - job-template:
122     name: '{project}-docker-build-push-monitor-{stream}'
123     disabled: '{obj:disabled}'
124     parameters: *parameters
125     scm:
126         - git-scm
127     builders: *builders
128
129     # trigger only matching the file name
130     triggers:
131         - gerrit:
132             trigger-on:
133                 - change-merged-event
134                 - comment-added-contains-event:
135                     comment-contains-value: 'remerge'
136             projects:
137               - project-compare-type: 'ANT'
138                 project-pattern: '{project}'
139                 branches:
140                     - branch-compare-type: 'ANT'
141                       branch-pattern: '**/{branch}'
142                 file-paths:
143                   - compare-type: ANT
144                     pattern: 'docker/**'
145