Files
Host files staged into each variant's workspace before setup runs.
Top-level files stages host files into every variant's /workspace before setup runs. The same shape is accepted on setup objects; setup-scoped entries stage only for variants that resolve that setup.
files:
- name: my-cli
source: ../build/mycli
dest: tools/mycli
- source: https://example.com/fixtures/data.bin
sha256: e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
dest: fixtures/data.binFile entry object
| Field | Required | Type / values | Notes |
|---|---|---|---|
name | Sometimes | Kebab-case string | Required when source is omitted. Used as the --file NAME=SOURCE handle. |
source | Sometimes | Host path or http(s) URL | Required when name is omitted. Relative paths resolve against the YAML file's directory. |
sha256 | No | 64-char hex string | Valid for file sources and URL downloads. Invalid for directory sources. |
dest | Yes | Workspace-relative path | Absolute paths, .., .axp-bridge, and :: are rejected. |
Notes:
- Directory sources copy their contents under
dest/. - File sources land as a single file at
dest. - URL sources must be publicly fetchable and land as a single file at
dest; unpack archives insetupif needed. - Sandboxes are Linux containers; macOS binaries staged from a laptop will not run there.
- Directory walks honor
.axpignore, not.gitignore. --file NAME=SOURCEbinds or overrides the source of a named entry.--file SOURCE::DESTstages an ad-hoc entry into every variant.- Missing or unbound sources abort real runs at preflight.
--resolve-variantsrendersMISSING/UNBOUNDannotations without failing. - Staging failures roll the variant up as
status=error/exit_reason=staging_failed; the rest of the run keeps going. - Platform and local runs both stage top-level
files. - Treat experiment YAML like a script you run: sources are read with your permissions and may point anywhere on the host.