Merge "Add JJB template for static code analysis by Coverity Scan service"
[ci-management.git] / jjb / ci-management / ci-management-coverity.yaml
1 ---
2 # Coverity Scan static analysis
3
4 - builder:
5     name: onap-maven-coverity
6     builders:
7       - lf-maven-install:
8           mvn-version: '{mvn-version}'
9       - lf-update-java-alternatives:
10           java-version: '{java-version}'
11       - lf-provide-maven-settings:
12           global-settings-file: global-settings
13           settings-file: '{mvn-settings}'
14       - shell: !include-raw-escape:
15           - ../../global-jjb/shell/common-variables.sh
16           - ../../shell/maven-coverity.sh
17       - lf-provide-maven-settings-cleanup
18
19 - job-template:
20     name: '{project-name}-coverity'
21     id: onap-gerrit-maven-coverity
22
23     project-type: freestyle
24     node: '{build-node}'
25
26     branch: master
27     build-days-to-keep: 7
28     build-timeout: 60
29     cron: '@daily'
30     disable-job: false
31     git-url: '$GIT_URL/$PROJECT'
32     java-version: openjdk8
33     mvn-global-settings: global-settings
34     mvn-opts: ''
35     mvn-params: ''
36     mvn-version: mvn35
37     coverity-project-name: ''
38     coverity-token: ''
39     coverity-user-email: ''
40     stream: master
41     submodule-recursive: true
42     submodule-timeout: 10
43     submodule-disable: false
44     archive-artifacts: >
45       **/*.log
46       **/hs_err_*.log
47       **/target/**/feature.xml
48       **/target/failsafe-reports/failsafe-summary.xml
49       **/target/surefire-reports/*-output.txt
50
51     disabled: '{disable-job}'
52
53     properties:
54       - lf-infra-properties:
55           build-days-to-keep: '{build-days-to-keep}'
56
57     parameters:
58       - lf-infra-parameters:
59           project: '{project}'
60           branch: '{branch}'
61           stream: '{stream}'
62       - lf-infra-maven-parameters:
63           mvn-opts: '{mvn-opts}'
64           mvn-params: '{mvn-params}'
65           mvn-version: '{mvn-version}'
66       - string:
67           name: ARCHIVE_ARTIFACTS
68           default: '{archive-artifacts}'
69           description: Artifacts to archive to the logs server.
70       - string:
71           name: COVERITY_PROJECT_NAME
72           default: '{coverity-project-name}'
73           description: |
74               Project name in Coverity Scan service.
75       - string:
76           name: COVERITY_TOKEN
77           default: '{coverity-token}'
78           description: |
79               Project token in Coverity Scan service.
80       - string:
81           name: COVERITY_USER_EMAIL
82           default: '{coverity-user-email}'
83           description: |
84               Email of registered user in Coverity Scan service who initiated
85               the submittion.
86
87     triggers:
88       - timed: '{obj:cron}'
89
90     wrappers:
91       - lf-infra-wrappers:
92           build-timeout: '{build-timeout}'
93           jenkins-ssh-credential: '{jenkins-ssh-credential}'
94
95     builders:
96       - lf-infra-pre-build
97       - onap-maven-coverity:
98           java-version: '{java-version}'
99           mvn-settings: '{mvn-settings}'
100           mvn-version: '{mvn-version}'
101
102     publishers:
103       - lf-infra-publish
104
105     scm:
106       - lf-infra-gerrit-scm:
107           jenkins-ssh-credential: '{jenkins-ssh-credential}'
108           git-url: '{git-url}'
109           refspec: $GERRIT_REFSPEC
110           branch: $GERRIT_BRANCH
111           submodule-recursive: '{submodule-recursive}'
112           submodule-timeout: '{submodule-timeout}'
113           submodule-disable: '{submodule-disable}'
114           choosing-strategy: default