Add new jenkins job for unittests
[releng.git] / jjb / releng / testapi-automate.yml
1 - project:
2     name: testapi-automate
3     stream:
4         - master:
5             branch: '{stream}'
6             gs-pathname: ''
7     jobs:
8         - 'testapi-automate-{stream}'
9         - 'testapi-verify-{stream}'
10
11     project: 'releng'
12
13 - job-template:
14     name: 'testapi-verify-{stream}'
15
16     parameters:
17         - project-parameter:
18             project: '{project}'
19         - gerrit-parameter:
20             branch: '{branch}'
21
22     scm:
23         - git-scm
24
25     triggers:
26         - gerrit:
27             server-name: 'gerrit.opnfv.org'
28             trigger-on:
29                 - patchset-created-event:
30                     exclude-drafts: 'false'
31                     exclude-trivial-rebase: 'false'
32                     exclude-no-code-change: 'false'
33                 - draft-published-event
34                 - comment-added-contains-event:
35                     comment-contains-value: 'recheck'
36                 - comment-added-contains-event:
37                     comment-contains-value: 'reverify'
38             projects:
39               - project-compare-type: 'ANT'
40                 project-pattern: '{project}'
41                 branches:
42                   - branch-compare-type: 'ANT'
43                     branch-pattern: '**/{branch}'
44                 file-paths:
45                   - compare-type: 'ANT'
46                     pattern: 'utils/**'
47
48     builders:
49         - run-unit-tests
50
51 - job-template:
52     name: 'testapi-automate-{stream}'
53
54     parameters:
55         - project-parameter:
56             project: '{project}'
57         - gerrit-parameter:
58             branch: '{branch}'
59         - string:
60             name: DOCKER_TAG
61             default: "latest"
62             description: "Tag name for testapi docker image"
63         - 'opnfv-build-defaults'
64
65     scm:
66         - git-scm
67
68     triggers:
69         - gerrit:
70             server-name: 'gerrit.opnfv.org'
71             trigger-on:
72                 - change-merged-event
73                 - comment-added-contains-event:
74                     comment-contains-value: 'remerge'
75             projects:
76               - project-compare-type: 'ANT'
77                 project-pattern: '{project}'
78                 branches:
79                   - branch-compare-type: 'ANT'
80                     branch-pattern: '**/{branch}'
81                 file-paths:
82                   - compare-type: 'ANT'
83                     pattern: 'utils/**'
84
85     builders:
86         - docker-update
87         - start-testapi-server
88         - testapi-doc-build
89         - upload-doc-artifact
90         - clean-testapi-server
91
92 ################################
93 # job builders
94 ################################
95
96 - builder:
97     name: run-unit-tests
98     builders:
99         - shell: |
100             bash ./jjb/releng/testapi-run-tests.sh
101
102 - builder:
103     name: docker-update
104     builders:
105         - shell: |
106             bash ./jjb/releng/testapi-docker-update.sh
107
108 - builder:
109     name: start-testapi-server
110     builders:
111         - shell: |
112             bash ./utils/test/testapi/htmlize/prepare.sh
113
114 - builder:
115     name: testapi-doc-build
116     builders:
117         - shell: |
118             bash ./utils/test/testapi/htmlize/doc-build.sh
119
120 - builder:
121     name: upload-doc-artifact
122     builders:
123         - shell: |
124             bash ./utils/test/testapi/htmlize/push-doc-artifact.sh
125
126 - builder:
127     name: clean-testapi-server
128     builders:
129         - shell: |
130             bash ./utils/test/testapi/htmlize/finish.sh