pkgs.krops: add rebuild

This commit is contained in:
tv 2018-09-16 01:53:53 +02:00
parent c46166d407
commit 5cd8bd046e
1 changed files with 14 additions and 4 deletions

View File

@ -2,7 +2,19 @@ let
lib = import ../../lib;
in
{ nix, openssh, populate, writeDash, writeJSON }: {
{ exec, nix, openssh, populate, writeDash, writeJSON }: rec {
rebuild = target:
exec "rebuild.${target.host}" rec {
filename = "${openssh}/bin/ssh";
argv = [
filename
"-l" target.user
"-p" target.port
target.host
"nixos-rebuild switch -I ${lib.escapeShellArg target.path}"
];
};
writeDeploy = name: { source, target }: let
target' = lib.mkTarget target;
@ -10,9 +22,7 @@ in
writeDash name ''
set -efu
${populate { inherit source; target = target'; }}
${openssh}/bin/ssh \
${target'.user}@${target'.host} -p ${target'.port} \
nixos-rebuild switch -I ${target'.path}
${rebuild target'}
'';
writeTest = name: { source, target }: let