Potential fix for code scanning alert no. 15: Workflow does not contain permissions #387
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Potential fix for https://github.com/olbrich/ruby-units/security/code-scanning/15
In general, you fix this problem by adding an explicit
permissions:block either at the workflow root (so it applies to all jobs by default) or per job, limitingGITHUB_TOKENto only what is needed (typicallycontents: readfor simple CI). This prevents the workflow from implicitly inheriting broader repository‑level defaults.The best minimal change here is to add a top‑level
permissions:block right undername: Teststhat setscontents: read. Bothtestandyardjobs only check out code, install Ruby, run tests/docs, and invoke a coverage action that uses an external token (QLTY_COVERAGE_TOKEN), so they should not require write access to the repository viaGITHUB_TOKEN. Adding a single root‑level block keeps existing functionality intact while addressing the CodeQL warning for all jobs. No new imports or other definitions are needed; this is purely a YAML configuration change within.github/workflows/tests.yml.Concretely: edit
.github/workflows/tests.ymlto insert:after line 1 (
name: Tests). Indentation must align with other top‑level keys (on:,jobs:). No other lines need to change.Suggested fixes powered by Copilot Autofix. Review carefully before merging.