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