Skip to content

Conversation

@cderv
Copy link
Collaborator

@cderv cderv commented Dec 11, 2025

This PR aims at improving readability of CI logs on failures. Idea is to navigate more easily to failing tests, and also have Windows and Linux behave the same. Difference in behavior is about the default for shell execution on error. See https://docs.github.com/en/actions/reference/workflows-and-actions/workflow-syntax#exit-codes-and-error-action-preference for details (basically CMD does not fail fast by default unlike bash and pwsh shells on github action)

…ithub Action

This hopefully ease the read of test logs inside github actions
@posit-snyk-bot
Copy link
Collaborator

posit-snyk-bot commented Dec 11, 2025

Snyk checks have passed. No issues have been found so far.

Status Scanner Critical High Medium Low Total (0)
Open Source Security 0 0 0 0 0 issues
Licenses 0 0 0 0 0 issues

💻 Catch issues earlier using the plugins for VS Code, JetBrains IDEs, Visual Studio, and Eclipse.

Enhance smoke test CI logs for better error visibility and reduced browser load:

- Add GitHub Actions error annotations with file paths and test names
- Implement workflow-level log grouping (collapsed by default)
- Gate verbose shell script messages behind RUNNER_DEBUG or QUARTO_TEST_VERBOSE
- Fix Linux CI to run all tests in bucket (no fail-fast) and report failures at end
- Update Windows CI to match Linux behavior (collect all failures before exiting)
CI annotations show which tests failed but don't help locate the failure in logs with thousands of lines. Users need to manually scroll through output to find the actual error.
Need to verify that failure markers and annotation improvements work correctly in CI logs before finalizing changes.
@cderv
Copy link
Collaborator Author

cderv commented Dec 12, 2025

Triggering a test with the failing one in the middle to see if we can navigate to it easily: https://github.com/quarto-dev/quarto-cli/actions/runs/20174970499

Bucket-level error annotations were emitted inside ::group::...::endgroup:: blocks, making them invisible when groups are collapsed. Users had to expand each group to see which buckets failed.

Move ::endgroup:: before the error check so bucket failure annotations appear outside the collapsed group and are immediately visible.
@cderv
Copy link
Collaborator Author

cderv commented Dec 15, 2025

@cderv
Copy link
Collaborator Author

cderv commented Dec 15, 2025

So this is what we see now
image
And we can unfold what we want to see
image
And at the end we have a summary of failing tests
image

This is the same on Windows.

See detailed log at quarto-dev/quarto-cli/actions/runs/20226090577

@cderv cderv requested a review from gordonwoodhull December 15, 2025 09:17
Moves GitHub Actions workflow command helpers from tests/ to src/tools/ so they can be used throughout the codebase to reduce ungrouped log lines. The consolidated helpers include proper escaping for workflow commands.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants