runs-on label. Trunk provisions a clean VM, runs the job, and tears the VM down when the job finishes. Your workflows stay on GitHub.
- A clean machine per job. Every job runs in its own fresh VM with no leftover state from earlier runs. See The runs-on label.
- Pick the size you need. One label sets the CPU count, and you can ask for high memory when a job needs it. See Machine sizes.
- Shared cache for faster builds. Jobs reuse build results across runs. Turn caching on or off per repository or for the whole organization. See Caching.
- Organization defaults. Set a default template, region, and size so most jobs only need to specify a size. See Organization defaults.
- Limits and priority. Cap CI CPU usage and mark priority branches. See Limits and priority.
- Run-as (Beta). Configure the identity a job runs under. See Run-as.