blob: 51a1569ae17f78c7f6c6642be89c0ef066735ba3 [file] [log] [blame]
Zack Williamscee76d22019-04-29 13:08:20 -07001---
2# Makefile based unit test
3
4- job-template:
5 id: 'make-unit-test'
6 name: 'verify_{project}_unit-test{name-extension}'
7
8 description: |
9 Created by {id} job-template from ci-management/jjb/make-unit.yaml<br/>
10 Runs make with the following unit tests targets - '{unit-test-targets}'
11
12 triggers:
13 - cord-infra-gerrit-trigger-patchset:
14 gerrit-server-name: '{gerrit-server-name}'
15 project-regexp: '^{project}$'
16 branch-regexp: '{branch-regexp}'
17 dependency-jobs: '{dependency-jobs}'
18 file-include-regexp: '{all-files-regexp}'
19
20 properties:
21 - cord-infra-properties:
22 build-days-to-keep: '{build-days-to-keep}'
23 artifact-num-to-keep: '{artifact-num-to-keep}'
24
25 wrappers:
26 - lf-infra-wrappers:
27 build-timeout: '{build-timeout}'
28 jenkins-ssh-credential: '{jenkins-ssh-credential}'
29
30 scm:
31 - cord-infra-gerrit-scm:
32 git-url: '$GIT_URL/$GERRIT_PROJECT'
33 refspec: '$GERRIT_REFSPEC'
34 branch: '$GERRIT_BRANCH'
35 submodule-recursive: 'false'
36 choosing-strategy: gerrit
37 jenkins-ssh-credential: '{jenkins-ssh-credential}'
38 basedir: '{project}'
39
40 node: '{build-node}'
41 project-type: freestyle
42 concurrent: true
43
44 builders:
45 - inject:
46 properties-content: |
47 DEST_GOPATH={dest-gopath}
48 UNIT_TEST_TARGETS={unit-test-targets}
49 UNIT_TEST_KEEP_GOING={unit-test-keep-going}
Andy Bavier028398c2019-09-30 17:44:19 -070050 GOPROXY=https://proxy.golang.org
Zack Williamscee76d22019-04-29 13:08:20 -070051 - shell: !include-raw-escape: shell/make-unit.sh
52
53 publishers:
54 - junit:
55 results: "**/*results.xml,**/*report.xml"
56 allow-empty-results: '{junit-allow-empty-results}'
Zack Williams0d196572021-04-12 08:42:24 -070057# NOTE: circa 2020-04-11, the Jenkins xUnit plugin version 3.x.x changed the
58# config XML to not be JJB compatible, replacing the previous XML <types> tag
59# with a <tools> tag.
60#
61# Temporarily switch to using raw XML to configure xUnit.
62#
63# The following xunit and XML should be equivalent, except that the variable
64# `xunit-skip-if-no-test-files` is assumed to always be true.
65#
66# - xunit:
67# types:
68# - gtest:
69# pattern: "**/*xunit.xml"
70# deleteoutput: false
71# skip-if-no-test-files: '{xunit-skip-if-no-test-files}'
72#
73 - raw:
74 xml: |
75 <xunit plugin="xunit">
76 <tools>
77 <GoogleTestType>
78 <pattern>**/*xunit.xml</pattern>
79 <failIfNotNew>true</failIfNotNew>
80 <deleteOutputFiles>false</deleteOutputFiles>
81 <skipNoTestFiles>True</skipNoTestFiles>
82 <stopProcessingIfError>true</stopProcessingIfError>
83 </GoogleTestType>
84 </tools>
85 <thresholds/>
86 <thresholdMode>1</thresholdMode>
87 <extraConfiguration>
88 <testTimeMargin>3000</testTimeMargin>
89 </extraConfiguration>
90 </xunit>
Zack Williamscee76d22019-04-29 13:08:20 -070091 - cobertura:
92 report-file: "**/*coverage.xml"
93 targets:
94 - files:
95 healthy: 80
96 unhealthy: 0
97 failing: 0
98 - method:
99 healthy: 50
100 unhealthy: 0
101 failing: 0
Joey Armstrongaf679da2023-01-31 14:22:41 -0500102
103# [EOF]