everettjf/VM4A run
Spawn a VM4A VM on a self-hosted Apple Silicon runner and run a command in it.
View on GitHubTrust Signals
- Scorecard Score
- not yet scored
- Maintenance Recency
- Activelast commit Jun 22, 2026
- License
- MIT
Pinned Snippet
uses: everettjf/vm4a@651fd93e6e040ed7cca057dda9c1e7a5251e9b5d # v2.7.0tags can be moved; commit SHAs can't. why a SHA?
Inputs
| name | description | required | default |
|---|---|---|---|
| command | Command to run inside the guest (passed to `vm4a exec -- ...`). | yes | — |
| name | VM name (becomes <storage>/<name>). | no | ci |
| from | OCI reference to pull if the bundle does not exist (e.g. ghcr.io/org/python-dev:latest). | no | "" |
| image | Image spec (catalog id / local path / https URL). Mutually exclusive with `from`. | no | "" |
| os | Guest OS: linux (default) or macOS. | no | linux |
| storage | Parent directory for VM bundles. | no | /tmp/vm4a |
| wait-timeout | Seconds to wait for SSH. | no | 180 |
| exec-timeout | Seconds to allow the command to run. | no | 600 |
| allow-domains | Comma-separated egress allow-list applied to the guest (Linux). | no | "" |
| cleanup | Stop and delete the VM after the run. | no | true |
Outputs
| name | description |
|---|---|
| exit-code | Exit code of the command run in the guest. |
| stdout | Captured stdout from the command. |
| ip | Guest IP address. |