# C shared library published as deb/rpm to PackageCloud.io --- - project: name: ric-plt-lib-rmr-project-view project-name: ric-plt-lib-rmr views: - project-view - _rmr_common: &rmr_common name: rmr-common # git repo project: ric-plt/lib/rmr # maven settings file has credentials to archive artifacts mvn-settings: ric-plt-lib-rmr-settings # jenkins job name prefix project-name: ric-plt-lib-rmr # test scripts depend on this name build-dir: $WORKSPACE/.build # Use ubuntu base for cmake v3 # Use docker variant for packagecloud ruby gem build-node: ubuntu1804-docker-4c-4g # install alien package to build RPMS on ubuntu pre-build: !include-raw-escape: - ../shell/install-deb-alien.sh # exclude irrelevant changes gerrit_trigger_file_paths: - compare-type: REG_EXP pattern: '^((?!src/bindings|\/COMMIT_MSG).)*$' # verify every commit - project: <<: *rmr_common name: ric-plt-lib-rmr-verify cmake-opts: -DDEV_PKG=1 -DBUILD_DOC=1 # skip install in cmake-build.sh install: false make-opts: package test ARGS=-V jobs: - gerrit-cmake-verify stream: - master: branch: master # development library - package and publish - project: <<: *rmr_common name: ric-plt-lib-rmr-dev project-name: ric-plt-lib-rmr-dev cmake-opts: -DDEV_PKG=1 make-opts: package ARGS=-V install-prefix: /usr/local jobs: - gerrit-cmake-packagecloud-stage stream: - master: branch: master # runtime library - package and publish - project: <<: *rmr_common name: ric-plt-lib-rmr-rt project-name: ric-plt-lib-rmr-rt cmake-opts: -DDEV_PKG=0 make-opts: package ARGS=-V install-prefix: /usr/local jobs: - gerrit-cmake-packagecloud-stage stream: - master: branch: master # promote deb/rpm from staging to release at PackageCloud.io - project: <<: *rmr_common name: ric-plt-lib-rmr-release # release uses sigul which requires centos build-node: centos7-builder-1c-1g jobs: - gerrit-packagecloud-release-verify - gerrit-packagecloud-release-merge # analyze C code and test coverage - project: name: ric-plt-lib-rmr-sonarqube <<: *rmr_common cmake-opts: -DDEV_PKG=1 make-opts: package test ARGS=-V sonar-project-file: "" sonar-properties: | sonar.login={sonarcloud_api_token} sonar.projectKey={sonarcloud_project_organization}_{project-name} sonar.projectName={project-name} sonar.organization={sonarcloud_project_organization} sonar.build.sourceEncoding=UTF-8 sonar.sources=src/rmr sonar.cfamily.build-wrapper-output=$WORKSPACE/bw-output sonar.cfamily.gcov.reportsPath=test sonar.cfamily.threads=2 jobs: - gerrit-cmake-sonarqube