Skip to content
@vmactions

VM Actions

Virtual machines for Github Actions. Use FreeBSD, OpenBSD, Solaris, etc in Github Actions.

Run your CI on the operating systems GitHub does not offer

GitHub-hosted runners give you Ubuntu, Windows and macOS. VM Actions gives you the rest. Each action in this organization boots a real, fully installed operating system under QEMU inside an ordinary ubuntu-latest runner, syncs your checked-out source tree into the guest, and runs your build and test commands there -- on the real kernel, the real libc, the real package manager, and, if you want, a real non-x86 CPU. No self-hosted runner, no container trickery, no cross-compilation guesswork.

A job is one step:

jobs:
  test:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v7
      - uses: vmactions/freebsd-vm@v1
        with:
          usesh: true
          prepare: |
            pkg install -y gmake
          run: |
            ./configure
            gmake
            gmake check

Everything else is optional: pick a release and an arch, choose how the workspace is shared (rsync, sshfs, nfs or scp), pass environment variables and secrets in with envs, set mem / cpu, forward ports with nat, run later workflow steps directly inside the VM with a custom shell, cache the VM image after prepare so repeat builds skip it, and switch on debug-on-error to get a VNC shell into the machine at the exact moment your build broke.

Writing the workflow is optional too: install the vmactions-ci skill and ask your coding agent for "run my tests on NetBSD aarch64" -- it knows the actions, the releases, the per-OS default shells and the footguns.

Pick a system from the table below. Images are built and booted by AnyVM.


VM GitHub Actions Arch Debug Shell
FreeBSD
Test
vmactions/freebsd-vm@v1 x86_64, aarch64, riscv64, powerpc64 debug on error
OpenBSD
Test
vmactions/openbsd-vm@v1 x86_64, aarch64, riscv64, sparc64 debug on error
NetBSD
Test
vmactions/netbsd-vm@v1 x86_64, aarch64, riscv64, sparc64 debug on error
Solaris
Test
vmactions/solaris-vm@v1 x86_64 debug on error
DragonFlyBSD
Test
vmactions/dragonflybsd-vm@v1 x86_64 debug on error
MidnightBSD
Test
vmactions/midnightbsd-vm@v1 x86_64 debug on error
GhostBSD
Test
vmactions/ghostbsd-vm@v1 x86_64 debug on error
OmniOS
Test
vmactions/omnios-vm@v1 x86_64 debug on error
OpenIndiana
Test
vmactions/openindiana-vm@v1 x86_64 debug on error
Haiku OS
Test
vmactions/haiku-vm@v1 x86_64 debug on error
Tribblix
Test
vmactions/tribblix-vm@v1 x86_64 debug on error
Blissos(Android)
Test
vmactions/blissos-vm@v1 x86_64 debug on error
GNU Hurd
Test
vmactions/hurd-vm@v1 x86_64, i386 debug on error
OpenEuler
Test
vmactions/openeuler-vm@v1 x86_64, aarch64, riscv64, loongarch64 debug on error

Pinned Loading

  1. donate donate Public

    Donate to vmactions

    1

  2. vmactions-skill vmactions-skill Public

    AI agent skill for vmactions— run, manage, and debug BSD/Illumos VMs in github actions. Works with Claude Code, GitHub Copilot, and other AI assistants.

Repositories

Showing 10 of 33 repositories

Top languages

Loading…

Most used topics

Loading…