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