From 0a68afdeb31bac86909f99d64ba8677a453c03a4 Mon Sep 17 00:00:00 2001 From: Prashant Bhanage Date: Sat, 3 Oct 2026 22:08:01 +0530 Subject: [PATCH 1/2] fix: skip coverage grade comment when grade unavailable --- .github/workflows/sonar-check.yml | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/.github/workflows/sonar-check.yml b/.github/workflows/sonar-check.yml index 7f2a1bdb2935..dc3810d004aa 100644 --- a/.github/workflows/sonar-check.yml +++ b/.github/workflows/sonar-check.yml @@ -76,12 +76,17 @@ jobs: const grade = '${{ steps.grade.outputs.coverage_grade }}'; const label = '${{ steps.grade.outputs.coverage_grade_label }}'; const linePct = '${{ steps.grade.outputs.line_coverage }}'; - const branchPct = '${{ steps.grade.outputs.branch_coverage }}'; + const branchPct = '${{ steps.grade.outputs.branch_coverage || 'N/A' }}'; const emojiMap = { A: '🟢', B: '🟡', C: '🟠', D: '🔴', F: '⛔' }; const emoji = emojiMap[grade] ?? '❓'; const runUrl = `${context.serverUrl}/${context.repo.owner}/${context.repo.repo}/actions/runs/${context.runId}`; const marker = ''; + if (!grade || grade === 'N/A') { + console.log('Coverage grade not available, skipping comment'); + return; + } + const branchRow = branchPct !== 'N/A' ? `| Branch coverage | **${branchPct}%** |` : ''; From 57a2c4123c2c27ecde808bf869d48eab0726dd23 Mon Sep 17 00:00:00 2001 From: Prashant Bhanage Date: Mon, 19 Oct 2026 15:28:48 +0530 Subject: [PATCH 2/2] fix: skip coverage grade comment on fork PRs --- .github/workflows/sonar-check.yml | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/.github/workflows/sonar-check.yml b/.github/workflows/sonar-check.yml index dc3810d004aa..de928196c4b0 100644 --- a/.github/workflows/sonar-check.yml +++ b/.github/workflows/sonar-check.yml @@ -69,6 +69,7 @@ jobs: id: grade run: bash scripts/coverage-grade.sh client/target/site/jacoco-aggregate/jacoco.xml - name: Post Coverage Grade Comment on PR + if: github.repository == 'apache/cloudstack' && github.event.pull_request.head.repo.full_name == github.repository uses: actions/github-script@3a2844b7e9c422d3c10d287c895573f7108da1b3 # v9.0.0 with: github-token: ${{ secrets.GITHUB_TOKEN }} @@ -82,11 +83,6 @@ jobs: const runUrl = `${context.serverUrl}/${context.repo.owner}/${context.repo.repo}/actions/runs/${context.runId}`; const marker = ''; - if (!grade || grade === 'N/A') { - console.log('Coverage grade not available, skipping comment'); - return; - } - const branchRow = branchPct !== 'N/A' ? `| Branch coverage | **${branchPct}%** |` : '';