blob: a1b306a65667a3d120897dba36900505526296da [file] [log] [blame]
Lott, Christopher (cl778h)679a5c12019-08-15 08:28:44 -04001---
2- project:
3 name: ric-plt-tracelibcpp-project-view
4 project-name: ric-plt-tracelibcpp
5 views:
6 - project-view
7
8- project:
9 name: ric-plt-tracelibcpp-info
10 project: ric-plt/tracelibcpp
11 project-name: ric-plt-tracelibcpp
12 build-node: centos7-builder-1c-1g
13 jobs:
14 - gerrit-info-yaml-verify
15
Alok Bhatt547f8fe2020-11-13 22:50:38 +000016- tracelibcpp_common: &tracelibcpp_common
17 name: tracelibcpp-common
18 # git repo
Lott, Christopher (cl778h)679a5c12019-08-15 08:28:44 -040019 project: ric-plt/tracelibcpp
20 # jenkins job name prefix
21 project-name: ric-plt-tracelibcpp
Alok Bhatt547f8fe2020-11-13 22:50:38 +000022 # maven settings file has credentials to archive artifacts
Lott, Christopher (cl778h)679a5c12019-08-15 08:28:44 -040023 mvn-settings: ric-plt-tracelibcpp-settings
Alok Bhatt547f8fe2020-11-13 22:50:38 +000024 # test scripts depend on this name
25 build-dir: $WORKSPACE/build
26 # Use ubuntu base for cmake v3
27 # Use docker variant for packagecloud ruby gem
28 build-node: ubuntu1804-docker-4c-4g
29 # pre-build scripts for CMake templates:
30 # install alien package to build RPMS
31 # install RMR per version file in repo
32 pre-build: !include-raw-escape:
33 - ../shell/install-deb-alien.sh
34 # skip install in cmake-build.sh
35 install: false
Lott, Christopher (cl778h)679a5c12019-08-15 08:28:44 -040036
Alok Bhatt547f8fe2020-11-13 22:50:38 +000037# verify every commit
Lott, Christopher (cl778h)679a5c12019-08-15 08:28:44 -040038- project:
Alok Bhatt547f8fe2020-11-13 22:50:38 +000039 <<: *tracelibcpp_common
40 name: tracelibcpp-verify
41 cmake-opts: -DDEV_PKG=1
42 make-opts: package test ARGS=-V
Lott, Christopher (cl778h)679a5c12019-08-15 08:28:44 -040043 jobs:
Alok Bhatt547f8fe2020-11-13 22:50:38 +000044 - gerrit-cmake-verify
Lott, Christopher (cl778h)679a5c12019-08-15 08:28:44 -040045 stream:
46 - master:
47 branch: master
Roni Riska188539f2019-11-29 16:02:58 +020048
Alok Bhatt547f8fe2020-11-13 22:50:38 +000049# development library - package and publish
Roni Riska188539f2019-11-29 16:02:58 +020050- project:
Alok Bhatt547f8fe2020-11-13 22:50:38 +000051 <<: *tracelibcpp_common
52 name: ric-plt-tracelibcpp-dev
53 project-name: '{name}'
54 cmake-opts: -DDEV_PKG=1
55 make-opts: package
56 install-prefix: /usr/local
57 jobs:
58 - gerrit-cmake-packagecloud-stage
59 stream:
60 - master:
61 branch: master
62
63# runtime library - package and publish
64- project:
65 <<: *tracelibcpp_common
66 name: ric-plt-tracelibcpp-rt
67 project-name: '{name}'
68 cmake-opts: -DDEV_PKG=0
69 make-opts: package
70 install-prefix: /usr/local
71 jobs:
72 - gerrit-cmake-packagecloud-stage
73 stream:
74 - master:
75 branch: master
76
77# promote deb/rpm from staging to release at PackageCloud.io
78- project:
79 <<: *tracelibcpp_common
Roni Riska188539f2019-11-29 16:02:58 +020080 name: ric-plt-tracelibcpp-release
Alok Bhatt547f8fe2020-11-13 22:50:38 +000081 # release uses sigul which requires centos
Roni Riska188539f2019-11-29 16:02:58 +020082 build-node: centos7-builder-1c-1g
83 jobs:
84 - gerrit-packagecloud-release-verify
85 - gerrit-packagecloud-release-merge
Alok Bhatt547f8fe2020-11-13 22:50:38 +000086
87# analyze C code and test coverage
88- project:
89 name: tracelibcpp-sonarqube
90 <<: *tracelibcpp_common
91 make-opts: -j8 all
92 sonar-project-file: ""
93 sonar-properties: |
94 sonar.login={sonarcloud_api_token}
95 sonar.projectKey={sonarcloud_project_organization}_{project-name}
96 sonar.projectName={project-name}
97 sonar.organization={sonarcloud_project_organization}
98 sonar.scanner.force-deprecated-java-version=true
99 sonar.build.sourceEncoding=UTF-8
100 sonar.sources=src
101 sonar.cfamily.build-wrapper-output=$WORKSPACE/bw-output
102 sonar.cfamily.gcov.reportsPath=test
103 jobs:
104 - gerrit-cmake-sonarqube