From: Jessica Wagantall Date: Wed, 7 Oct 2020 16:49:19 +0000 (+0000) Subject: Merge "Add sonar job to the com-pylog jjb template" X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=commitdiff_plain;h=4e966f87caba041ad316dae621c3b86b928a5d50;hp=d385a32e51c1e4a6c2a11bfcb1887eb940bf3575;p=ci-management.git Merge "Add sonar job to the com-pylog jjb template" --- diff --git a/jjb/ric-plt-alarm-go/prescan-alarm-go-ubuntu.sh b/jjb/ric-plt-alarm-go/prescan-alarm-go-ubuntu.sh index e0abfc4d..bad7c82b 100755 --- a/jjb/ric-plt-alarm-go/prescan-alarm-go-ubuntu.sh +++ b/jjb/ric-plt-alarm-go/prescan-alarm-go-ubuntu.sh @@ -20,7 +20,7 @@ git clone https://github.com/nanomsg/nng.git && sudo ninja install) # build script must start in this subdir -cd adapter -bash build_adapter_ubuntu.sh +cd build +bash build_ubuntu.sh echo "--> prescan-alarm-go-ubuntu.sh ends" diff --git a/jjb/ric-plt-alarm-go/ric-plt-alarm-go.yaml b/jjb/ric-plt-alarm-go/ric-plt-alarm-go.yaml old mode 100644 new mode 100755 index 4e0c94b7..dae92066 --- a/jjb/ric-plt-alarm-go/ric-plt-alarm-go.yaml +++ b/jjb/ric-plt-alarm-go/ric-plt-alarm-go.yaml @@ -27,12 +27,12 @@ <<: *alarm_go_common name: ric-plt-alarm-go-docker # image name - docker-name: 'o-ran-sc/ric-plt-alarmadapter' + docker-name: 'o-ran-sc/ric-plt-alarmmanager' # source of docker tag container-tag-method: yaml-file - container-tag-yaml-dir: adapter + container-tag-yaml-dir: build # use host network - docker-build-args: '-f adapter/Dockerfile --network=host' + docker-build-args: '-f build/Dockerfile --network=host' build-node: ubuntu1804-docker-4c-4g stream: - master: @@ -62,7 +62,7 @@ # Source sonar.sources=. # Unit tests - sonar.go.coverage.reportPaths=adapter/cover.out,alarm/cover.out + sonar.go.coverage.reportPaths=manager/cover.out,alarm/cover.out # Inclusions sonar.inclusions=**/*.go # Exclusions diff --git a/jjb/ric-plt-sdlgo/prescan-sdlgo-go-ubuntu.sh b/jjb/ric-plt-sdlgo/prescan-sdlgo-go-ubuntu.sh new file mode 100644 index 00000000..b9c27b5e --- /dev/null +++ b/jjb/ric-plt-sdlgo/prescan-sdlgo-go-ubuntu.sh @@ -0,0 +1,69 @@ +#!/bin/bash +# Installs NNG then runs a build script in the repository +# Assumes ubuntu - uses apt-get + +echo "--> prescan-sdlgo-go-ubuntu.sh" + +set -ex + +sudo apt-get install -y cmake ninja-build + +# NNG repo is not frequently tagged so it's pinned to a commit hash. +# This commit repairs bug https://github.com/nanomsg/nng/issues/970 +git clone https://github.com/nanomsg/nng.git +(cd nng \ + && git checkout e618abf8f3db2a94269a79c8901a51148d48fcc2 \ + && mkdir build \ + && cd build \ + && cmake -DBUILD_SHARED_LIBS=1 -G Ninja .. \ + && ninja \ + && sudo ninja install) +#!/bin/bash + +#================================================================================== +# Copyright (c) 2020 AT&T Intellectual Property. +# Copyright (c) 2020 Nokia +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +#================================================================================== +# Go install, build, etc +export GOPATH=$HOME/go +export PATH=$GOPATH/bin:$PATH + +# xApp-framework stuff +export CFG_FILE=../config/config-file.json +export RMR_SEED_RT=../config/uta_rtg.rt + +GO111MODULE=on GO_ENABLED=0 GOOS=linux + +# setup version tag +if [ -f container-tag.yaml ] +then + tag=$(grep "tag:" container-tag.yaml | awk '{print $2}') +else + tag="no-tag-found" +fi + +hash=$(git rev-parse --short HEAD || true) + +# Build + +go build -a -installsuffix cgo -ldflags "-X main.Version=$tag -X main.Hash=$hash" -o ./cmd/*.go + +# Execute UT and measure coverage + +go test . -v -coverprofile cover.out || true + +echo "--> build_sdlgo_ubuntu.sh ends" + +echo "--> prescan-sdlgo-go-ubuntu.sh ends" diff --git a/jjb/ric-plt-sdlgo/ric-plt-sdlgo.yaml b/jjb/ric-plt-sdlgo/ric-plt-sdlgo.yaml index c2cea4b0..3e2a454d 100644 --- a/jjb/ric-plt-sdlgo/ric-plt-sdlgo.yaml +++ b/jjb/ric-plt-sdlgo/ric-plt-sdlgo.yaml @@ -38,3 +38,39 @@ stream: - master: branch: master +- project: + <<: *sdlgo_docker_common + name: ric-plt-sdlgo-go-sonarqube + # docker-enabled nodes have golang + # build script needs ubuntu + build-node: ubuntu1804-docker-4c-4g + sonar-prescan-script: !include-raw-escape: prescan-sdlgo-go-ubuntu.sh + sonar-project-file: "" + # use sonarcloud values from defaults.yaml + sonar-properties: | + # Required metadata + sonar.login={sonarcloud_api_token} + sonar.projectKey={sonarcloud_project_organization}_{project-name} + sonar.projectName={project-name} + sonar.organization={sonarcloud_project_organization} + # Encoding + sonar.build.sourceEncoding=UTF-8 + # Language + sonar.language=go + # Source + sonar.sources=. + # Unit tests + sonar.go.coverage.reportPaths=./cover.out,/internal/sdlgoredis/cover.out + # Inclusions + sonar.inclusions=**/*.go + # Exclusions + sonar.exclusions=**/*_test.go + jobs: + - gerrit-sonar-prescan-script + +- project: + <<: *sdlgo_docker_common + name: ric-plt-sdlgo-go-release + build-node: centos7-docker-2c-8g + jobs: + - '{project-name}-gerrit-release-jobs'