-
Notifications
You must be signed in to change notification settings - Fork 44
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Fix loss of run-summary.md
in GHA Job Summary
#652
Fix loss of run-summary.md
in GHA Job Summary
#652
Conversation
Scala Steward's GitHub Action Job Summary, which details success or failure of each repo in the Scala Steward run, was added with scala-steward-org/scala-steward#3071 in June 2023, followed up by scala-steward-org/scala-steward#3088, which ensured that old `run-summary.md` files couldn't persist in the workspace cache (where they might become misleading), by purging them before the cache was saved. Unfortunately scala-steward-org#631 (released with v2.67.0 in September 2024) unintentionally broke the outputting of the Job Summary, because it moved the `saveWorkspaceCache()` call (which among other things deletes the `run-summary.md` file) to a point _before_ the `run-summary.md` file was read and output to the GitHub Action Job Summary. We can see this in these two successive runs of the Guardian's Scala Steward workflow: * Run 6002 (using [email protected]) successfully output the scala-steward summary: https://github.com/guardian/scala-steward-public-repos/actions/runs/11591772739 https://github.com/guardian/scala-steward-public-repos/actions/runs/11591772739/job/32272232470#step:7:4512 * Run 6003 (using [email protected]) silently omitted to output the summary: https://github.com/guardian/scala-steward-public-repos/actions/runs/11592668893 https://github.com/guardian/scala-steward-public-repos/actions/runs/11592668893/job/32275051343#step:7:35 The fix is just to move the code writing the run-summary earlier, to _before_ the new `finally` block introduced by scala-steward-org#631 which executes `saveWorkspaceCache()`. I've also renamed the method to make its actions a little clearer: * OLD: `workspace.saveWorkspaceCache()` * NEW: `workspace.purgeTempFilesAndSaveCache()`
A snapshot release has been created as You can test it out with: uses: scala-steward-org/scala-steward-action@snapshots/652 It will be automatically recreated on any change to this PR. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM 👍
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks @rtyley! That's a great catch!
Thanks @alejandrohdezma ! I see this has gone out in v2.71.0 - thank you! |
Scala Steward's GitHub Action Job Summary, which reports success or failure of individual repos in the Scala Steward run, was added with scala-steward-org/scala-steward#3071 in June 2023, followed up by scala-steward-org/scala-steward#3088, which ensured that old
run-summary.md
files couldn't persist in the workspace cache (where they might become misleading), by purging them before the cache was saved.Unfortunately #631 (released with v2.67.0 in September 2024) unintentionally broke the outputting of the Job Summary, because it moved the
saveWorkspaceCache()
call (which among other things deletes therun-summary.md
file) to a point before therun-summary.md
file was read and output to the GitHub Action Job Summary.We can see this in these two successive runs of the Guardian's Scala Steward workflow:
Run 6002 (using scala-steward-action@v2.65.0) successfully output the scala-steward summary: https://github.com/guardian/scala-steward-public-repos/actions/runs/11591772739 https://github.com/guardian/scala-steward-public-repos/actions/runs/11591772739/job/32272232470#step:7:451
Run 6003 (using scala-steward-action@v2.70.0) silently omitted the summary: https://github.com/guardian/scala-steward-public-repos/actions/runs/11592668893 https://github.com/guardian/scala-steward-public-repos/actions/runs/11592668893/job/32275051343#step:7:35
Changes
The fix is just to move the code processing the run-summary earlier, to before the new
finally
block introduced by #631 which executessaveWorkspaceCache()
.I've also renamed the method to make its actions a little clearer:
...becomes...
Tests
Without refactoring, testing that the
core.summary.addRaw()
method is successfully called with a summary would probably require some kind of large test againstrun()
inmain.ts
- there are none of those already, and I was too nervous to attempt one!I have run the
scala-steward-org/scala-steward-action@snapshots/652
snapshot of this PR with guardian/scala-steward-public-repos#78, and confirmed that the report is properly restored to the Job Summary: