This is an automated email from the ASF dual-hosted git repository.
lewismc pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/nutch.git
The following commit(s) were added to refs/heads/master by this push:
new eed344510 NUTCH-3085 Augment CI by adding code coverage and code
quality reporting (#902)
eed344510 is described below
commit eed3445104636b8e2362988f867aaf9da61f6bf5
Author: Lewis John McGibbney <[email protected]>
AuthorDate: Mon Feb 23 20:19:50 2026 -0800
NUTCH-3085 Augment CI by adding code coverage and code quality reporting
(#902)
---
.github/workflows/sonarcloud.yml | 29 ++++++++++++++++++++++++-----
README.md | 2 +-
2 files changed, 25 insertions(+), 6 deletions(-)
diff --git a/.github/workflows/sonarcloud.yml b/.github/workflows/sonarcloud.yml
index 33af1af2e..92c609483 100644
--- a/.github/workflows/sonarcloud.yml
+++ b/.github/workflows/sonarcloud.yml
@@ -28,6 +28,11 @@ jobs:
repository: ${{ github.event.workflow_run.head_repository.full_name
}}
ref: ${{ github.event.workflow_run.head_sha }}
fetch-depth: 0
+ - name: Fetch target branch for PR analysis
+ if: github.event.workflow_run.event == 'pull_request'
+ run: |
+ git remote add upstream https://github.com/${{ github.repository
}}.git || true
+ git fetch upstream master:refs/remotes/upstream/master
- name: Set up JDK 17
uses: actions/setup-java@v5
with:
@@ -73,14 +78,28 @@ jobs:
echo "is_pr=false" >> "$GITHUB_OUTPUT"
exit 0
fi
- PR_NUMBER=$(gh api \
- "repos/${{ github.repository }}/commits/${{
github.event.workflow_run.head_sha }}/pulls" \
- --jq '.[0].number // empty')
- echo "number=${PR_NUMBER:-}" >> "$GITHUB_OUTPUT"
+
+ PR_NUMBER="${{ github.event.workflow_run.pull_requests[0].number }}"
+
+ if [ -z "$PR_NUMBER" ]; then
+ PR_NUMBER=$(gh api \
+ "repos/${{ github.repository }}/commits/${{
github.event.workflow_run.head_sha }}/pulls" \
+ --jq '.[0].number // empty')
+ fi
+
+ if [ -z "$PR_NUMBER" ]; then
+ PR_NUMBER=$(gh pr list --repo "${{ github.repository }}" --state
open \
+ --json number,headRefOid \
+ --jq ".[] | select(.headRefOid == \"${{
github.event.workflow_run.head_sha }}\") | .number")
+ fi
+
if [ -n "$PR_NUMBER" ]; then
+ echo "number=${PR_NUMBER}" >> "$GITHUB_OUTPUT"
echo "is_pr=true" >> "$GITHUB_OUTPUT"
else
echo "is_pr=false" >> "$GITHUB_OUTPUT"
+ echo "skip=true" >> "$GITHUB_OUTPUT"
+ echo "⚠️ Could not resolve PR number for pull_request event.
Skipping SonarCloud analysis."
fi
env:
GH_TOKEN: ${{ github.token }}
@@ -96,7 +115,7 @@ jobs:
SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}
SONAR_HOST_URL: https://sonarcloud.io
- name: SonarCloud Scan (branch)
- if: steps.pr.outputs.is_pr == 'false'
+ if: steps.pr.outputs.is_pr == 'false' && steps.pr.outputs.skip !=
'true'
uses: SonarSource/sonarqube-scan-action@v6
with:
args: >
diff --git a/README.md b/README.md
index 30fdc1d5a..fa6881604 100644
--- a/README.md
+++ b/README.md
@@ -2,7 +2,7 @@ Apache Nutch README
===================
[](https://github.com/apache/nutch/actions/workflows/master-build.yml)
-[](https://sonarcloud.io/summary/new_code?id=apache_nutch)
+[](https://sonarcloud.io/summary/new_code?id=apache_nutch)
<img src="https://nutch.apache.org/assets/img/nutch_logo_tm.png" align="right"
width="300" />