Skip to content

Add zizmor and fix its findings - #25

Merged
dduugg merged 1 commit into
mainfrom
add-zizmor
Sep 29, 2026
Merged

dduugg merged 1 commit into
mainfrom
add-zizmor

Conversation

@dduugg

@dduugg dduugg commented Sep 29, 2026 •

Copy link
Copy Markdown
Contributor

Summary

Adds .github/workflows/zizmor.yml, a caller of rubyatscale/shared-config/.github/workflows/zizmor.yml@main (rubyatscale/shared-config#32), and fixes everything zizmor 1.30.1 reports in this repo so the new check starts clean. The same cleanup went into visualize_packs#113 and pks#55.

  • zizmor mode: the default advanced-security: true, so results go to the Security tab and findings don't fail the job. The caller grants contents: read and security-events: write.
  • Pinned to commit SHAs, with the exact version in a trailing comment:
    • actions/checkout v4 → v7.0.1
    • ruby/setup-ruby v1 → v1.327.0
    • rubygems/release-gem v1 → v1.1.1
    • checkout moves to v7.0.1, the version shared-config pins. Unless noted below, the rest stay on the release their floating tag runs today.
  • persist-credentials: false on 2 checkouts, so the token isn't left in .git/config.
  • Documented ignores for the org's deliberate patterns, worded as in the other repos:
    • unpinned-uses on the @main calls into shared-config, which exist so its fixes propagate.
  • Dependabot: a 7-day cooldown on every entry, plus a github-actions entry to keep the new pins current.
  • Release workflow cache: the tag-triggered release.yml no longer restores the bundler cache, which other workflows can write (zizmor cache-poisoning). It runs bundle install instead.
  • Version comment: the rubygems/release-gem pin keeps its SHA, but its comment said v1, which now points elsewhere. It now says v1.1.1 (zizmor ref-version-mismatch).

Test plan

  • zizmor 1.30.1 with online audits: 7 findings before, 0 after.
  • actionlint reports nothing new.
  • Fresh Eyes local review: no findings.
  • zizmor / zizmor and the existing checks pass on this PR.

@dduugg
dduugg requested a review from a team as a code owner September 29, 2026 20:25
@github-advanced-security

Copy link
Copy Markdown

You are seeing this message because GitHub Code Scanning has recently been set up for this repository, or this pull request contains the workflow file for the Code Scanning tool.

What Enabling Code Scanning Means:

  • The 'Security' tab will display more code scanning analysis results (e.g., for the default branch).
  • Depending on your configuration and choice of analysis tool, future pull requests will be annotated with code scanning analysis results.
  • You will be able to see the analysis results for the pull request's branch on this overview once the scans have completed and the checks have passed.

For more information about GitHub Code Scanning, check out the documentation.

Adds a zizmor workflow that calls rubyatscale/shared-config's reusable
zizmor.yml, and fixes what zizmor 1.30.1 reports here so it starts
clean.

Actions are pinned to commit SHAs with the exact version in a trailing
comment: checkout at v7.0.1, as shared-config pins it, and the rest at
the release their floating tag runs today. Checkouts set
persist-credentials: false. The @main calls into shared-config get the
same documented zizmor ignores the other rubyatscale repos use.
Dependabot entries get a 7-day cooldown, and a github-actions entry
keeps the new pins current.

The tag-triggered release no longer restores the bundler cache, which
other workflows can write; it runs bundle install instead. The
release-gem pin keeps its SHA but its comment now names v1.1.1.
@dduugg
dduugg merged commit 95277fa into main Sep 29, 2026
8 checks passed
@dduugg
dduugg deleted the add-zizmor branch September 29, 2026 20:57
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.

2 participants