Change CI runner from ubuntu-latest to self-hosted#81
Conversation
There was a problem hiding this comment.
Pull request overview
Updates the GitHub Actions CI workflow to run key jobs on self-hosted runners instead of GitHub-hosted ubuntu-latest, presumably to use internal infrastructure and/or reduce hosted runner usage.
Changes:
- Switch
build-and-testjob runner fromubuntu-latesttoself-hosted. - Switch
build-release-binariesjob runner fromubuntu-latesttoself-hosted. - Switch
docker-buildjob runner fromubuntu-latesttoself-hosted.
| build-and-test: | ||
| name: Build & Test (features=${{ matrix.features }}) | ||
| runs-on: ubuntu-latest | ||
| #runs-on: ubuntu-latest |
There was a problem hiding this comment.
Keeping the old runs-on line commented out adds noise and can drift from reality. If you want to preserve the previous value, consider removing the commented line and capturing the reasoning in a short comment (or in PR description/docs) instead.
| #runs-on: ubuntu-latest | |
| # Run on self-hosted runner (requires project-specific environment, e.g. Docker) |
| #runs-on: ubuntu-latest | ||
| runs-on: self-hosted |
There was a problem hiding this comment.
This workflow runs on pull_request, so switching build-and-test to a self-hosted runner will execute untrusted PR code on your own runner machine. Consider using GitHub-hosted runners for PRs (or gating self-hosted runs to trusted events/branches only) to avoid runner compromise and secret exfiltration risks.
| #runs-on: ubuntu-latest | |
| runs-on: self-hosted | |
| runs-on: ${{ github.event_name == 'pull_request' && 'ubuntu-latest' || 'self-hosted' }} |
| #runs-on: ubuntu-latest | ||
| runs-on: self-hosted |
There was a problem hiding this comment.
runs-on: self-hosted is very broad; these steps assume a Linux/Ubuntu-like environment (bash conditionals, apt-get, strip). Use runner labels (e.g., runs-on: [self-hosted, linux, x64] and/or a custom label for your prepared image) so the job can’t land on an incompatible self-hosted runner.
| #runs-on: ubuntu-latest | ||
| runs-on: self-hosted |
There was a problem hiding this comment.
PR title indicates all jobs should move off ubuntu-latest, but create-release still uses ubuntu-latest in this workflow. Either update the title/scope to reflect the partial migration, or move create-release to the intended runner type as well (keeping in mind any permissions/security requirements).
No description provided.