jvpp.yaml revision d4d9fd57
1---
2- project:
3    name: jvpp
4    jobs:
5      - 'jvpp-verify-{stream}-{os}'
6      - 'jvpp-merge-{stream}-{os}'
7    project: 'jvpp'
8    os:
9      - ubuntu1604:
10          repo-os-part: 'ubuntu.xenial.main'
11          skip-site: 'false'
12          skip-jar-deploy: 'true'
13          vpp-job-prefix: ''
14      - ubuntu1804:
15          repo-os-part: 'ubuntu.bionic.main'
16          skip-site: 'false'
17          skip-jar-deploy: 'false'
18          vpp-job-prefix: 'beta-'
19      - centos7:
20          repo-os-part: 'centos7'
21          skip-site: 'true'
22          skip-jar-deploy: 'true'
23          vpp-job-prefix: ''
24    stream:
25      - master:
26          branch: 'master'
27          repo-stream-part: 'master'
28      - '1904':
29          branch: 'stable/1904'
30          repo-stream-part: 'stable.1904'
31
32- project:
33    name: jvpp-view
34    views:
35      - project-view
36    project-name: jvpp
37
38- job-template:
39    name: 'jvpp-verify-{stream}-{os}'
40
41    project-type: freestyle
42    node: '{os}-us'
43    concurrent: true
44
45    build-discarder:
46      daysToKeep: '{build-days-to-keep}'
47      numToKeep: '{build-num-to-keep}'
48      artifactDaysToKeep: '{build-artifact-days-to-keep}'
49      artifactNumToKeep: '{build-artifact-num-to-keep}'
50
51    parameters:
52      - project-parameter:
53          project: '{project}'
54      - gerrit-parameter:
55          branch: '{branch}'
56      - os-parameter:
57          os: '{os}'
58      - repo-name-parameter:
59          repo-name: '{repo-stream-part}.{repo-os-part}'
60      - stream-parameter:
61          stream: '{stream}'
62
63    scm:
64      - gerrit-trigger-scm:
65          credentials-id: 'jenkins-gerrit-credentials'
66          refspec: '$GERRIT_REFSPEC'
67          choosing-strategy: 'gerrit'
68
69    wrappers:
70      - fdio-infra-wrappers:
71          build-timeout: '{build-timeout}'
72
73    triggers:
74      - gerrit-trigger-patch-submitted:
75          name: '{project}'
76          branch: '{branch}'
77
78    builders:
79      - lf-update-java-alternatives:
80          java-version: openjdk11
81      - shell:
82          !include-raw-escape:
83          - ../scripts/setup_jvpp_dev_env.sh
84          - include-raw-jvpp-build.sh
85
86    publishers:
87      - archive:
88          artifacts: >
89            **/build-root/packages/*.rpm,
90            **/build-root/packages/*.deb
91
92          allow-empty: 'true'
93          fingerprint: false
94          only-if-success: true
95          default-excludes: false
96      - fdio-infra-shiplogs:
97          maven-version: 'mvn36'
98          archive-artifacts: '/tmp/jvpp-failed-unittests/*/* **/core'
99      - naginator:
100          rerun-unstable-builds: false
101          max-failed-builds: 2
102          fixed-delay: 90
103      - email-notification:
104          email-prefix: '[jvpp]'
105
106- job-template:
107    name: 'jvpp-merge-{stream}-{os}'
108
109    project-type: freestyle
110    node: '{os}-us'
111
112    build-discarder:
113      daysToKeep: '{build-days-to-keep}'
114      numToKeep: 100
115      artifactDaysToKeep: '{build-artifact-days-to-keep}'
116      artifactNumToKeep: '{build-artifact-num-to-keep}'
117
118    parameters:
119      - project-parameter:
120          project: '{project}'
121      - gerrit-parameter:
122          branch: '{branch}'
123      - os-parameter:
124          os: '{os}'
125      - maven-project-parameter:
126          maven: 'mvn36'
127      - maven-exec:
128          maven-version: 'mvn36'
129      - stream-parameter:
130          stream: '{stream}'
131      - repo-name-parameter:
132          repo-name: '{repo-stream-part}.{repo-os-part}'
133
134    scm:
135      - gerrit-trigger-scm:
136          credentials-id: 'jenkins-gerrit-credentials'
137          refspec: ''
138          choosing-strategy: 'default'
139
140    wrappers:
141      - fdio-infra-wrappers:
142          build-timeout: '{build-timeout}'
143
144    triggers:
145      - gerrit-trigger-patch-merged:
146          name: '{project}'
147          branch: '{branch}'
148      - reverse:
149          jobs: 'vpp-{vpp-job-prefix}merge-{stream}-{os}'
150          result: 'success'
151
152    builders:
153      - lf-update-java-alternatives:
154          java-version: openjdk11
155      - config-file-provider:
156          files:
157            - file-id: '.packagecloud'
158              target: '/root'
159      - config-file-provider:
160          files:
161            - file-id: 'packagecloud_api'
162              target: '/root'
163      - maven-target:
164          maven-version: 'mvn36'
165          goals: '--version'
166          settings: 'jvpp-settings'
167          settings-type: cfp
168          global-settings: 'global-settings'
169          global-settings-type: cfp
170      - shell:
171          !include-raw-escape:
172          - ../scripts/setup_jvpp_dev_env.sh
173          - include-raw-jvpp-build.sh
174      - provide-maven-settings:
175          settings-file: 'jvpp-settings'
176          global-settings-file: 'global-settings'
177      - shell:
178          !include-raw-escape:
179          - ./include-raw-jvpp-packetcloud-push.sh
180      - shell:
181          !include-raw-escape:
182          - ../scripts/maven_push_functions.sh
183          - include-raw-jvpp-maven-push.sh
184
185    publishers:
186      - archive:
187          artifacts: >
188            **/build-root/packages/*.rpm,
189            **/build-root/packages/*.deb
190          allow-empty: 'true'
191          fingerprint: false
192          only-if-success: true
193          default-excludes: false
194      - fdio-infra-shiplogs:
195          maven-version: 'mvn36'
196      - naginator:
197          rerun-unstable-builds: false
198          max-failed-builds: 1
199          fixed-delay: 90
200      - email-notification:
201          email-prefix: '[jvpp]'
202