--- title: "Runner configuration" description: "Inputs supported by cracicorp/setup@v1 for CRACI runner jobs" source: "https://docs.craci.com/reference/runner-configuration/" --- Add `cracicorp/setup@v1` before a job's other steps to select its runner resources, image, reusable template, and network policy. You can omit the action to use your organization's default runner configuration. ```yaml - uses: cracicorp/setup@v1 with: size: "4" image: default ``` ## Inputs | Input | Required | Built-in default | Description | | ---------- | -------- | --------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------- | | `template` | No | `default` | Reusable runner configuration created by an organization administrator. | | `size` | No | `2` compute units (2 vCPU and 6 GB of memory) | Compute units assigned to the job. Accepts an integer from `1` through `32`. Each unit provides 1 vCPU and 3 GB of memory. | | `image` | No | `default` | Runtime image name. | | `network` | No | All presets; other outbound connections are allowed | YAML network policy for this job. An explicit policy replaces the selected template's network policy. | The selected template replaces these built-in defaults. An explicit `size`, `image`, or `network` input then overrides that part of the template for the current job. Input names are case-insensitive. Values may use GitHub Actions expressions when the expression resolves to a scalar value available before the job starts. ## Reusable templates Organization administrators create runner templates under **Settings → Runner Templates**. Select one by its slug: ```yaml - uses: cracicorp/setup@v1 with: template: release-build ``` The selected template supplies the base image, size, and network policy. Without a `template` input, CRACI selects the built-in `default` template. ## Compute size Set `size` to the number of compute units required by the job. Values outside the supported `1..32` range are invalid. ```yaml - uses: cracicorp/setup@v1 with: size: "8" ``` Quote the value to keep it unambiguously a string in workflow YAML. ## Runner image Set `image` to a supported image name: ```yaml - uses: cracicorp/setup@v1 with: image: craci-ubuntu-24.04 ``` See [Runner images](/reference/runner-images/) for image names, architectures, and installed software. ## Network policy Set `network` to a YAML block when a job needs a policy different from the selected runner template: ```yaml - uses: cracicorp/setup@v1 with: network: | default: deny presets: [github, npm] ``` See [Control network access from jobs](/guides/setup-action-network/) for policy defaults, built-in presets, custom package sources, and connection rules. ## Invalid configuration CRACI validates runner configuration before starting the job. If CRACI cannot parse an input, it schedules the default runner environment and writes a warning to the job log. An unknown image or runner template is rejected instead of being silently replaced. Check the job log and correct the setup input before relying on the requested configuration.