Merge "Remove invalid release 1.0.0 entry from CLI jjb"
[ci-management.git] / jjb / ci-management / ci-management.yaml
1 ---
2 - project:
3     name: ci-management-jobs
4     jobs:
5       - '{project-name}-ci-jobs'
6       - '{project}-verify-packer'
7       - '{project}-merge-packer-{platforms}-{templates}'
8
9     project: 'ci-management'
10     project-name: 'ci-management'
11     archive-artifacts: '**/*.log'
12     branch: 'master'
13     build-timeout: '60'
14     build-node: 'centos7-basebuild-2c-1g'
15     platforms:
16       - centos
17       - ubuntu-16.04
18
19     templates:
20       - basebuild
21       - docker
22       - redis
23
24     exclude:
25       # only build the docker image on ubuntu at present
26       - platforms: centos
27         templates: docker
28
29 - job-template:
30     name: '{project}-verify-jjb'
31
32     project-type: freestyle
33     node: '{build-node}'
34     concurrent: true
35
36     properties:
37       - infra-properties:
38           build-days-to-keep: 14
39
40     parameters:
41       - infra-parameters:
42           project: '{project}'
43           branch: 'master'
44           refspec: 'refs/heads/master'
45           artifacts: '{archive-artifacts}'
46
47     scm:
48       - gerrit-trigger-scm:
49           refspec: '$GERRIT_REFSPEC'
50           choosing-strategy: 'gerrit'
51           submodule-recursive: '{submodule-recursive}'
52
53     wrappers:
54       - infra-wrappers:
55           build-timeout: '{build-timeout}'
56
57     triggers:
58       - gerrit-trigger-patch-submitted:
59           server: '{server-name}'
60           project: '{project}'
61           branch: '{branch}'
62           files: 'jjb/**'
63
64     builders:
65       - config-file-provider:
66           files:
67             - file-id: 'jjbini'
68               variable: 'JJBINI'
69       - shell: |
70           virtualenv $WORKSPACE/venv
71           source $WORKSPACE/venv/bin/activate
72           pip install --upgrade pip
73           pip freeze
74           pip install jenkins-job-builder
75           jenkins-jobs -l DEBUG --conf $JJBINI test -o archives/job_output jjb/
76           gzip archives/job_output/*
77       - ci-management-check-unicode
78
79     publishers:
80       - infra-shiplogs:
81           maven-version: '{maven-version}'
82
83 - job-template:
84     name: '{project}-merge-jjb'
85
86     project-type: freestyle
87     node: '{build-node}'
88
89     properties:
90       - infra-properties:
91           build-days-to-keep: 14
92
93     parameters:
94       - infra-parameters:
95           project: '{project}'
96           branch: 'master'
97           refspec: 'refs/heads/master'
98           artifacts: '{archive-artifacts}'
99
100     scm:
101       - gerrit-trigger-scm:
102           refspec: ''
103           choosing-strategy: 'default'
104           submodule-recursive: '{submodule-recursive}'
105
106     wrappers:
107       - infra-wrappers:
108           build-timeout: '{build-timeout}'
109
110     triggers:
111       - gerrit-trigger-patch-merged:
112           server: '{server-name}'
113           project: '{project}'
114           branch: '{branch}'
115           files: 'jjb/**'
116
117     builders:
118       - config-file-provider:
119           files:
120             - file-id: 'jjbini'
121               variable: 'JJBINI'
122       - shell: |
123           virtualenv $WORKSPACE/venv
124           source $WORKSPACE/venv/bin/activate
125           pip install --upgrade pip
126           pip freeze
127           pip install jenkins-job-builder
128           jenkins-jobs --conf $JJBINI update --delete-old --workers 4 jjb/
129
130     publishers:
131       - infra-shiplogs:
132           maven-version: '{maven-version}'
133
134 - job-template:
135     name: '{project}-verify-packer'
136     project-type: freestyle
137     node: '{build-node}'
138     concurrent: true
139
140     properties:
141       - infra-properties:
142           build-days-to-keep: 14
143
144     parameters:
145       - infra-parameters:
146           project: '{project}'
147           branch: 'master'
148           refspec: 'refs/heads/master'
149           artifacts: '{archive-artifacts}'
150
151     scm:
152       - gerrit-trigger-scm:
153           refspec: '$GERRIT_REFSPEC'
154           choosing-strategy: 'gerrit'
155           submodule-recursive: '{submodule-recursive}'
156
157     wrappers:
158       - infra-wrappers:
159           build-timeout: '{build-timeout}'
160
161     triggers:
162       - gerrit-trigger-patch-submitted:
163           server: '{server-name}'
164           project: '{project}'
165           branch: 'master'
166           files: 'packer/**'
167
168     builders:
169       - packer-validate
170
171     publishers:
172       - infra-shiplogs:
173           maven-version: '{maven-version}'
174 - job-template:
175     name: '{project}-merge-packer-{platforms}-{templates}'
176     project-type: freestyle
177     node: '{build-node}'
178     concurrent: true
179
180     properties:
181       - infra-properties:
182           build-days-to-keep: 14
183
184     parameters:
185       - infra-parameters:
186           project: '{project}'
187           branch: 'master'
188           refspec: 'refs/heads/master'
189           artifacts: '{archive-artifacts}'
190
191     scm:
192       - gerrit-trigger-scm:
193           refspec: ''
194           choosing-strategy: 'default'
195           submodule-recursive: '{submodule-recursive}'
196
197     wrappers:
198       - infra-wrappers:
199           build-timeout: '{build-timeout}'
200
201     triggers:
202       - gerrit-trigger-patch-merged:
203           server: '{server-name}'
204           project: '{project}'
205           branch: 'master'
206           files: 'packer/**'
207
208     builders:
209       - packer-validate
210       - packer-build:
211           platform: '{platforms}'
212           template: '{templates}'
213
214     publishers:
215       - infra-shiplogs:
216           maven-version: '{maven-version}'