[
https://issues.apache.org/jira/browse/NUTCH-3208?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18114811#comment-18114811
]
Hudson commented on NUTCH-3208:
-------------------------------
SUCCESS: Integrated in Jenkins build Nutch ยป Nutch-trunk #268 (See
[https://ci-builds.apache.org/job/Nutch/job/Nutch-trunk/268/])
NUTCH-3208 GitHub Actions JUnit and Yetus workflows do not reliably post PR
comments (#963) (github:
[https://github.com/apache/nutch/commit/320d93bf20f5b76b255b1f5bee5e124a2af68862])
* (edit) .github/workflows/yetus.yml
* (add) .github/workflows/yetus-comment.yml
NUTCH-3208 GitHub Actions JUnit and Yetus workflows do not reliably post PR
comments (#962) (github:
[https://github.com/apache/nutch/commit/bfb67a9be8194d8ee8b50fce95263d0b0d1f0b73])
* (edit) .github/workflows/junit-report.yml
> GitHub Actions JUnit and Yetus workflows do not reliably post PR comments
> -------------------------------------------------------------------------
>
> Key: NUTCH-3208
> URL: https://issues.apache.org/jira/browse/NUTCH-3208
> Project: Nutch
> Issue Type: Task
> Components: ci/cd
> Affects Versions: 1.23
> Reporter: Lewis John McGibbney
> Assignee: Lewis John McGibbney
> Priority: Minor
> Fix For: 1.24
>
>
> h3. Problem
> The JUnit report workflow never posts a comment on the GitHub PR. The Apache
> Yetus workflow only comments sometimes (same-repo PRs such as Dependabot).
> Fork PRs usually get no Yetus comment.
> Intended behavior (NUTCH-3126 and the Yetus workflow) is a report on the PR
> thread.
> h3. Evidence
> * Yetus comment present (same-repo / Dependabot):
> [https://github.com/apache/nutch/pull/961#issuecomment-5405632841]
> * Matching junit-report run succeeded with no PR comment:
> [https://github.com/apache/nutch/actions/runs/32812407266]
> h3. Causes
> *JUnit* ({{{}.github/workflows/junit-report.yml{}}}):
> * {{skip_success_summary: true}} โ mikepenz/action-junit-report builds empty
> tables when all tests pass, then skips {{{}attachComment{}}}. Green PRs get
> no comment.
> * Job {{if: github.event.workflow_run.conclusion == 'success'}} โ if tests
> fail, parent CI is {{failure}} and the reporter is skipped even though XML
> was uploaded ({{{}if: always(){}}}).
> * Path-filtered PRs upload no XML โ stay silent (no fallback comment). That
> is acceptable.
> *Yetus* ({{{}.github/workflows/yetus.yml{}}}):
> * Comment is posted from the {{pull_request}} job with {{{}GITHUB_TOKEN{}}}.
> Fork PRs get HTTP 403.
> * {{continue-on-error: true}} hides those failures.
> * A repo PAT is not a fork fix: secrets are not available to fork
> {{pull_request}} runs. Do not use {{{}pull_request_target{}}}.
> h3. Fix (two GitHub PRs)
> # *JUnit:* {{{}skip_success_summary: false{}}}; keep compact totals
> ({{{}include_passed: false{}}}); run reporter when parent is success *or*
> failure and the event is {{{}pull_request{}}}; sticky {{{}updateComment{}}};
> skip publish if no XML; resolve PR number only for {{apache/nutch}} (do not
> trust a fork's {{{}pull_requests[0]{}}}).
> # *Yetus:* generate the markdown report on {{pull_request}} and upload it;
> post/update one sticky comment from a new {{workflow_run}} companion
> (base-repo token, no checkout of PR head). Remove in-workflow peter-evans
> comment and {{{}continue-on-error{}}}.
> h3. Acceptance
> * Green PR that ran tests: sticky JUnit totals comment; later pushes update
> it.
> * Failing tests (parent {{{}failure{}}}): JUnit comment still appears.
> * Path-filter / no XML: no JUnit comment.
> * Same-repo and fork PRs: one sticky Yetus comment that updates on push.
> h3. Out of scope
> * {{pull_request_target}} that checks out or runs PR code
> * Commenting from master-build.yml
> * Path-filter test selection
--
This message was sent by Atlassian Jira
(v8.20.10#820010)