From b32cc41e89dfe084a03bf9eeda5eada51fadb9e7 Mon Sep 17 00:00:00 2001 From: Saikrishna Bairamoni <84093461+SaikrishnaBairamoni@users.noreply.github.com> Date: Fri, 17 Apr 2026 11:16:34 -0400 Subject: [PATCH 1/6] remove deprecated build wrapper and compile commands --- .github/workflows/ci.yml | 56 +++++++--------------------------------- build.sh | 2 +- sonar-project.properties | 21 +++++++++------ 3 files changed, 23 insertions(+), 56 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 666ffba3..85e2a506 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -10,7 +10,6 @@ jobs: image: ubuntu:jammy-20230126 env: working-directory: /asn1_codec - BUILD_WRAPPER_OUT_DIR: "$GITHUB_WORKSPACE/bw-output" options: "--user root" steps: - name: checkout code @@ -76,23 +75,18 @@ jobs: echo "export CC=gcc" >> ~/.bashrc working-directory: ${{ env.working-directory }} - - name: Install sonar-scanner and build-wrapper - uses: SonarSource/sonarcloud-github-c-cpp@v3 - # Install SonarScanner and build-wrapper for code analysis - - name: Build and Generate test coverage run: | - sudo su - root - sudo chmod o+w /root - sudo chmod 755 -R /__w/asn1_codec/asn1_codec/ - export BUILD_WRAPPER_OUT_DIR=$GITHUB_WORKSPACE/bw-output - build-wrapper-linux-x86-64 --out-dir $GITHUB_WORKSPACE/bw-output ./build.sh - mkdir coverage - cd coverage - gcov $GITHUB_WORKSPACE/kafka-test/src/*.cpp --object-directory /__w/asn1-codec/asn1-codec/build/kafka-test/CMakeFiles/Kafka-TestLib.dir/src/ - gcov $GITHUB_WORKSPACE/src/*.cpp --object-directory /__w/asn1-codec/asn1-codec/build/CMakeFiles/ppm_tests.dir/src/ + ./build.sh + mkdir -p coverage + gcovr \ + --root $GITHUB_WORKSPACE \ + --object-directory $GITHUB_WORKSPACE/build \ + --xml coverage/coverage.xml \ + --exclude '.*pugixml.*' \ + --exclude '.*librdkafka.*' working-directory: ${{ env.working-directory }} - + - name: Archive code coverage results uses: actions/upload-artifact@v4 with: @@ -100,46 +94,14 @@ jobs: path: /__w/asn1-codec/asn1-codec/coverage/ # Archive code coverage results for later reference - - name: Archive buildwrapper output - uses: actions/upload-artifact@v4 - with: - name: asn1-codec - path: /home/runner/work/asn1-codec/asn1-codec/bw-output - # Archive build-wrapper output - - uses: actions/setup-java@v4 with: distribution: 'temurin' java-version: '17' - - name: Setup SonarScanner - uses: warchant/setup-sonar-scanner@v7 - - - name: Generate sonar properties file - run: | - # Generate SonarScanner properties file - cat < /tmp/sonar-scanner.properties - sonar.host.url=https://sonarcloud.io - sonar.projectName=asn1-codec - sonar.projectVersion=1.0 - sonar.projectKey=usdot-jpo-ode_asn1-codec - sonar.organization=usdot-jpo-ode - sonar.sources=src,kafka-test/src,include - sonar.cfamily.build-wrapper-output=bw-output - sonar.cfamily.gcov.reportsPath=/__w/asn1-codec/asn1-codec/coverage/ - sonar.sonar.projectBaseDir=/home/runner/work/asn1-codec/asn1-codec/ - sonar.exclusions=**/*.java - sonar.coverage.exclusions=**/*.java - sonar.exclusions=pugixml/tests/data/** - # Set Git as SCM sensor - sonar.scm.disabled=true - sonar.scm.provider=git - sonar.sourceEncoding=UTF-8 - EOF - name: SonarScanner if: github.event.pull_request.base.repo.owner.login == 'usdot-jpo-ode' uses: usdot-fhwa-stol/actions/sonar-scanner@main with: - sonar-properties-path: /tmp/sonar-scanner.properties sonar-token: ${{ secrets.SONAR_TOKEN }} working-dir: $GITHUB_WORKSPACE diff --git a/build.sh b/build.sh index ef468422..2c7bbded 100644 --- a/build.sh +++ b/build.sh @@ -22,7 +22,7 @@ ls -la && pwd # build asn1_codec mkdir build cd build -cmake .. +cmake -DCMAKE_EXPORT_COMPILE_COMMANDS=ON .. cmake --build . make ctest --output-on-failure \ No newline at end of file diff --git a/sonar-project.properties b/sonar-project.properties index b5cfe93b..20631c93 100644 --- a/sonar-project.properties +++ b/sonar-project.properties @@ -1,9 +1,14 @@ -sonar.projectKey=jpo-cvdp-key -sonar.projectName=jpo-cvdp +sonar.organization=usdot-jpo-ode +sonar.projectKey=usdot-jpo-ode_asn1-codec +sonar.projectName=asn1-codec sonar.projectVersion=1.0 -sonar.sources=src,cv-lib/src -sonar.cfamily.build-wrapper-output=bw-output -sonar.host.url=https://sonarqube.com -sonar.organization=aferber-github -sonar.login=feb286a32ec2f510525f9e3e44da3f81b4de57c0 -sonar.cfamily.gcov.reportsPath=./coverage + +sonar.sources=src,kafka-test/src,include +sonar.cfamily.compile-commands=build/compile_commands.json +sonar.coverageReportPaths=coverage/coverage.xml + +sonar.exclusions=**/*.java,pugixml/tests/data/** +sonar.coverage.exclusions=**/*.java +sonar.scm.disabled=true +sonar.scm.provider=git +sonar.sourceEncoding=UTF-8 \ No newline at end of file From 5c8a16cfa23623123c73bfa56e936a288ec33b54 Mon Sep 17 00:00:00 2001 From: Saikrishna Bairamoni <84093461+SaikrishnaBairamoni@users.noreply.github.com> Date: Fri, 17 Apr 2026 11:22:36 -0400 Subject: [PATCH 2/6] update --- .github/workflows/ci.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 85e2a506..4772b2a1 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -77,6 +77,9 @@ jobs: - name: Build and Generate test coverage run: | + sudo su - root + sudo chmod o+w /root + sudo chmod 755 -R /__w/asn1_codec/asn1_codec/ ./build.sh mkdir -p coverage gcovr \ From eebf9759a8635793da4961552c9be2ce8377e6bb Mon Sep 17 00:00:00 2001 From: Saikrishna Bairamoni <84093461+SaikrishnaBairamoni@users.noreply.github.com> Date: Fri, 17 Apr 2026 11:45:22 -0400 Subject: [PATCH 3/6] Update third party actions versions --- .github/workflows/ci.yml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 4772b2a1..e29eb1d2 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -13,7 +13,7 @@ jobs: options: "--user root" steps: - name: checkout code - uses: actions/checkout@v4 + uses: actions/checkout@v5 # Checkout the code from the repository - name: Install necessary dependencies @@ -89,15 +89,15 @@ jobs: --exclude '.*pugixml.*' \ --exclude '.*librdkafka.*' working-directory: ${{ env.working-directory }} - + - name: Archive code coverage results - uses: actions/upload-artifact@v4 + uses: actions/upload-artifact@v7 with: name: asn1-codec path: /__w/asn1-codec/asn1-codec/coverage/ # Archive code coverage results for later reference - - uses: actions/setup-java@v4 + - uses: actions/setup-java@v5 with: distribution: 'temurin' java-version: '17' From 30a4082b3e3b1da5e39e2aac837179e4e8852534 Mon Sep 17 00:00:00 2001 From: Saikrishna Bairamoni <84093461+SaikrishnaBairamoni@users.noreply.github.com> Date: Fri, 17 Apr 2026 12:02:41 -0400 Subject: [PATCH 4/6] update permissions on build.sh --- .github/workflows/ci.yml | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index e29eb1d2..26292859 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -77,9 +77,7 @@ jobs: - name: Build and Generate test coverage run: | - sudo su - root - sudo chmod o+w /root - sudo chmod 755 -R /__w/asn1_codec/asn1_codec/ + chmod +x build.sh ./build.sh mkdir -p coverage gcovr \ From 0c826c04d28557cb24395d729bb97e7980ccbb36 Mon Sep 17 00:00:00 2001 From: Saikrishna Bairamoni <84093461+SaikrishnaBairamoni@users.noreply.github.com> Date: Fri, 17 Apr 2026 12:26:05 -0400 Subject: [PATCH 5/6] update --- .github/workflows/ci.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 26292859..19a13d5c 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -100,9 +100,9 @@ jobs: distribution: 'temurin' java-version: '17' - - name: SonarScanner - if: github.event.pull_request.base.repo.owner.login == 'usdot-jpo-ode' + - name: SonarScanner + if: github.event_name != 'pull_request' || github.event.pull_request.base.repo.owner.login == 'usdot-jpo-ode' uses: usdot-fhwa-stol/actions/sonar-scanner@main with: sonar-token: ${{ secrets.SONAR_TOKEN }} - working-dir: $GITHUB_WORKSPACE + working-dir: ${{ github.workspace }} \ No newline at end of file From 5062407f95f874f69005557dfe3c74d0de497078 Mon Sep 17 00:00:00 2001 From: Saikrishna Bairamoni <84093461+SaikrishnaBairamoni@users.noreply.github.com> Date: Fri, 17 Apr 2026 12:37:14 -0400 Subject: [PATCH 6/6] update gcovr xml path format --- .github/workflows/ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 19a13d5c..fd6d82d9 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -83,7 +83,7 @@ jobs: gcovr \ --root $GITHUB_WORKSPACE \ --object-directory $GITHUB_WORKSPACE/build \ - --xml coverage/coverage.xml \ + --sonarqube coverage/coverage.xml \ --exclude '.*pugixml.*' \ --exclude '.*librdkafka.*' working-directory: ${{ env.working-directory }}