Allow building on more than 1 machine.
We could use
- Nix store distributed builds, or
om ci run --on, or
- Plain
ssh ...
for this.
Braindump
(3) is probably more suitable, because we can run all steps including attic push (#29) when the build happens on remote machine, but then that would require those machines to have deps (om, attic, cachix, git, etc.) installed, ideally at pinned versions. So, (2) is probably the way to go -- it can also happen a step granular level (only om stage is done remotely), but then that would unnecessarily download files locally. So perhaps we should re-evaluate (3) while tackling the dependency issue?
(3) Remote deps
om, attic, git, etc. could be setup by copying their derivations (including pinned nixpkgs). Could just copy the vira flake, and then use a devShell from it containing these tools in PATH.
Then we need a concept of workspace dir for remote nodes too. Umm.
Tasks
Allow building on more than 1 machine.
We could use
om ci run --on, orssh ...for this.
Braindump
(3) is probably more suitable, because we can run all steps including
attic push(#29) when the build happens on remote machine, but then that would require those machines to have deps (om, attic, cachix, git, etc.) installed, ideally at pinned versions. So, (2) is probably the way to go -- it can also happen a step granular level (only om stage is done remotely), but then that would unnecessarily download files locally. So perhaps we should re-evaluate (3) while tackling the dependency issue?(3) Remote deps
om,attic,git, etc. could be setup by copying their derivations (including pinned nixpkgs). Could just copy theviraflake, and then use a devShell from it containing these tools in PATH.Then we need a concept of workspace dir for remote nodes too. Umm.
Tasks
om ci run --on)