1e480eade8637e2f7494858480672af623bd247b
[ci-management.git] / jjb / ric-plt-sdl / ric-plt-sdl.yaml
1 ---
2 - project:
3     name: ric-plt-sdl-project-view
4     project-name: ric-plt-sdl
5     views:
6       - project-view
7
8 - project:
9     name: ric-plt-sdl-info
10     project: ric-plt/sdl
11     project-name: ric-plt-sdl
12     build-node: centos7-builder-1c-1g
13     jobs:
14       - gerrit-info-yaml-verify
15
16 - _sdl_common: &sdl_common # values apply to all ric-plt/sdl projects
17     name: sdl-common
18     # git repo
19     project: ric-plt/sdl
20     # jenkins job name prefix
21     project-name: ric-plt-sdl
22     # maven settings file has credentials
23     mvn-settings: ric-plt-sdl-settings
24
25 # compile code and run tests
26 - project:
27     <<: *sdl_common
28     name: ric-plt-sdl-lib
29     pre-build: !include-raw-escape: setup-sdl-build-deb.sh
30     build-node: ubuntu1804-builder-2c-2g
31     make-opts: -j 2 test
32     jobs:
33       - gerrit-autotools-verify
34     stream:
35       - master:
36           branch: master
37
38 # common settings for building DEB and RPM packages
39 - _sdl_pkg_common: &sdl_pkg_common
40     name: ric-plt-pkg-cmn
41     pre-build: !include-raw-escape: setup-sdl-build-deb.sh
42     # directory with package files
43     build-dir: pkg
44     # docker image has the package_cloud gem
45     build-node: ubuntu1804-docker-4c-4g
46     jobs:
47       - gerrit-autotools-packagecloud-stage
48     stream:
49       - master:
50           branch: master
51
52 # build DEB package files
53 - project:
54     <<: *sdl_common
55     <<: *sdl_pkg_common
56     name: ric-plt-sdl-deb
57     project-name: "{name}"
58     configure-opts: --with-deb-dir={build-dir}
59     make-opts: -j4 deb-pkg
60
61 # build RPM package files
62 - project:
63     <<: *sdl_common
64     <<: *sdl_pkg_common
65     name: ric-plt-sdl-rpm
66     project-name: "{name}"
67     configure-opts: --with-rpm-dir={build-dir}
68     # parallel jobs (option -j) fail on rpm build
69     # https://bugzilla.redhat.com/show_bug.cgi?id=1398405
70     make-opts: rpm-pkg
71
72 # analyze C code and test coverage
73 - project:
74     <<: *sdl_common
75     name: ric-plt-lib-sdl-sonarqube
76     pre-build: !include-raw-escape: setup-sdl-build-deb.sh
77     build-node: ubuntu1804-docker-4c-4g
78     # set appropriate CXXFLAGS
79     configure-opts: --with-gcov-report-dir=gcov_report
80     # use all cores
81     make-opts: -j4 test_gcov
82     sonar-project-file: ""
83     sonar-properties: |
84       sonar.login={sonarcloud_api_token}
85       sonar.projectKey={sonarcloud_project_organization}_{project-name}
86       sonar.projectName={project-name}
87       sonar.organization={sonarcloud_project_organization}
88       sonar.build.sourceEncoding=UTF-8
89       sonar.sources=src
90       sonar.cfamily.build-wrapper-output=$WORKSPACE/bw-output
91       sonar.cfamily.cache.enabled=false
92       sonar.cfamily.gcov.reportsPath=gcov_report
93       sonar.cfamily.threads=4
94     jobs:
95       - gerrit-autotools-sonarqube
96
97 - project:
98     <<: *sdl_common
99     name: ric-plt-sdl-release
100     # release uses sigul which requires centos
101     build-node: centos7-builder-1c-1g
102     jobs:
103       - gerrit-packagecloud-release-verify
104       - gerrit-packagecloud-release-merge