Skip to content

ci: move off the self-hosted NAS runner and pin actions - #273

Merged
AlexanderHeffernan merged 1 commit into
mainfrom
security/github-hosted-ci
Oct 22, 2026
Merged

AlexanderHeffernan merged 1 commit into
mainfrom
security/github-hosted-ci

Conversation

@galengreen

Copy link
Copy Markdown
Contributor

The CI workflows ran on a self-hosted runner on the NAS and were triggered by pull_request. Code from a pull request could therefore run on that machine. The repo is public, so that included anyone whose earlier PR had been merged.

Changes:

  • All jobs run on ubuntu-latest, with permissions: contents: read.
  • Every action is pinned to a full commit SHA, with the version in a comment.
  • The image build/push only runs after tests pass on a push to main. Before this, a passing PR test also triggered a push of :latest.
  • The build checks out the exact commit that was tested (workflow_run.head_sha).
  • QEMU is added so the linux/arm64 image builds on hosted runners.
  • workflow_dispatch now runs. Before this, the if always skipped it.

Note: no self-hosted runner is currently registered for this repo, so CI wasn't running at all. After merging, a push to main will publish fresh :latest images to Docker Hub again.

The workflows targeted a self-hosted runner on a home NAS and ran on
pull_request, so code from a PR could execute on that machine. They now
run on ubuntu-latest with read-only token permissions.

- Pin every action to a full commit SHA
- Only build and push images for tested pushes to main, not PRs
- Build the exact commit that passed tests
- Add QEMU so the arm64 image builds on hosted runners
- Allow workflow_dispatch to actually run (it was always skipped)
@AlexanderHeffernan
AlexanderHeffernan merged commit 93f0bb6 into main Oct 22, 2026
2 checks passed
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