Skip to main content

max / makenotwork

3.8 KB · 112 lines History Blame Raw
1 # Local dev defaults. Override path with SANDO_CONFIG.
2 listen = "127.0.0.1:7766"
3 db_path = "./sando.db"
4 topology_path = "../sando.toml"
5 # Hostname (/proc/sys/kernel/hostname) this daemon may build on. build::run
6 # refuses to compile on any other host, so a misdeployed daemon can't build on
7 # prod. Required.
8 build_host = "fw13"
9 workdir = "./work"
10 release_root = "./releases"
11 # Shared cargo target dir across per-sha worktrees — incremental rebuilds reuse
12 # the previous sha's compiled deps instead of clean-compiling each fresh
13 # worktree. Safe because builds are serialized. Omit for per-worktree target/.
14 cargo_target_dir = "./cargo-target"
15 # Dropped and recreated on every migration_dry_run. Leave unset to skip.
16 # The role must be SUPERUSER on the scratch cluster: the gates reset it, seed the
17 # dump's owner role into it, and drop stale mnw_test_* clones left by a killed
18 # run (including foreign-owned ones, which DROP DATABASE refuses without
19 # superuser). The daemon asserts this at startup and refuses to boot otherwise.
20 # ALTER ROLE sando SUPERUSER;
21 scratch_db_url = "postgres://sando@127.0.0.1/sando_scratch"
22 # Role that owns the objects in a prod pg_dump. The dump carries `ALTER ... OWNER
23 # TO <role>` for every object, so it must exist in the scratch cluster before a
24 # restore; reset_scratch creates it NOLOGIN and grants it CREATE on public, so no
25 # manual SQL is needed on a fresh box. Must match the prod DB owner.
26 scratch_owner_role = "makenotwork"
27
28 # TypeScript frontends the code_smoke gate compiles. Both build scripts downgrade
29 # a tsc error to a cargo::warning so the Rust build still succeeds against a
30 # stale static/dist/; this is where that failure is fatal instead. See the
31 # frontend_build docs in daemon/src/config.rs.
32 [[frontend_build]]
33 dir = "server/frontend"
34
35 [[frontend_build]]
36 dir = "multithreaded/frontend"
37
38 # Companion crates built from the same worktree/sha as the server and staged
39 # into the release bundle, so a contract-coupled service can't drift out of
40 # lockstep. mnw-cli is the public git-SSH server that proxies to /api/internal/*
41 # — a two-month drift is what broke git hosting during the 0.10.14 deploy. Which
42 # nodes install it is set per-node in the topology (see prod-1 in sando.toml).
43 [[companion]]
44 name = "mnw-cli"
45 manifest_dir = "mnw-cli"
46 bin = "mnw-cli"
47
48 # Crates the cargo_test gate runs, in order. This list used to be hardcoded to
49 # `server`, so every other crate in the repo shipped ungated — including
50 # mnw-cli, which is BUILT as a companion and installed onto prod-1 in the same
51 # promote it ships. All of these were verified green on 2026-07-21 before being
52 # added; the gate stops at the first red one.
53 #
54 # scratch_db exports DATABASE_URL/TEST_DATABASE_URL. Only the server needs it
55 # (its sqlx macros type-check against a live DB). Leaving it off elsewhere keeps
56 # crates that ship offline `.sqlx` data in offline mode.
57 [[test_target]]
58 dir = "server"
59 features = ["fast-tests"]
60 scratch_db = true
61
62 # Companion: ships to prod-1, so it is gated first among the rest.
63 [[test_target]]
64 dir = "mnw-cli"
65
66 [[test_target]]
67 dir = "multithreaded"
68 scratch_db = true
69
70 [[test_target]]
71 dir = "pom"
72
73 [[test_target]]
74 dir = "wam"
75
76 # shared/* — every app and service in the repo links these.
77 [[test_target]]
78 dir = "shared/docengine"
79 all_features = true
80
81 # No tests of its own yet; listed so a compile break still fails the gate.
82 [[test_target]]
83 dir = "shared/egui-updater"
84
85 [[test_target]]
86 dir = "shared/kberg"
87 all_features = true
88
89 [[test_target]]
90 dir = "shared/livechat"
91 all_features = true
92
93 [[test_target]]
94 dir = "shared/ops-core"
95
96 [[test_target]]
97 dir = "shared/ops-exec"
98 all_features = true
99
100 [[test_target]]
101 dir = "shared/pom-contract"
102
103 [[test_target]]
104 dir = "shared/s3-storage"
105
106 [[test_target]]
107 dir = "shared/synckit-client"
108 all_features = true
109
110 [[test_target]]
111 dir = "shared/tagtree"
112