Repository navigation
Expand file tree
/
Copy pathstoat.toml
More file actions
34 lines (29 loc) · 1.65 KB
/
Copy pathstoat.toml
File metadata and controls
34 lines (29 loc) · 1.65 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
# stoat.toml declares this repository's VMs. Commit it, and stoat.lock with it.
# Every field carries its type, its default, and who writes it.
schema = 1 # int, required. The file format version.
[project]
name = "myrepo" # string, default: the directory name.
# The prefix for a VM's global name.
# Remote recipes. A value is a ref string, or a table naming a source.
# stoat recipe lock pins each one to a commit in stoat.lock.
[recipes]
tailscale = "v1.2"
[vms.dev] # the key "dev" is the name you type
image = "ubuntu-24.04" # string, required. A catalog id, or a path
# to your own image, relative to this file.
name = "shared-dev" # string, default "<project>-<key>". The VM's
# global name under ~/.stoat.
cpus = 4 # int, default 4
ram = 4096 # int, MB, default 4096
disk = "20G" # string, default 8G. Disk-mode images only.
recipes = ["docker", "tailscale"] # applied in dependency order
shares = [".", "src"] # directories from this project, mounted under
# /work. "." mounts at /work, "src" at
# /work/src. Every entry stays inside the
# project.
agent_access = "manage" # none | observe | manage | exec, default manage
[vms.dev.params.docker] # non-secret recipe params
user = "dev" # secrets go in .stoat/secrets.toml, 0600
[vms.docs]
image = "alpine-virt"
shares = ["docs"]