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