47 lines
1.8 KiB
Nix
47 lines
1.8 KiB
Nix
|
{ self, ... }:
|
||
|
{
|
||
|
perSystem = { nodes, pkgs, lib, ... }:
|
||
|
let
|
||
|
dependencies = [
|
||
|
self
|
||
|
pkgs.stdenv.drvPath
|
||
|
self.clanInternals.machines.${pkgs.hostPlatform.system}.test_install_machine.config.system.build.toplevel
|
||
|
self.clanInternals.machines.${pkgs.hostPlatform.system}.test_install_machine.config.system.build.diskoScript
|
||
|
self.clanInternals.machines.${pkgs.hostPlatform.system}.test_install_machine.config.system.clan.deployment.file
|
||
|
self.inputs.nixpkgs.legacyPackages.${pkgs.hostPlatform.system}.disko
|
||
|
] ++ builtins.map (i: i.outPath) (builtins.attrValues self.inputs);
|
||
|
closureInfo = pkgs.closureInfo { rootPaths = dependencies; };
|
||
|
in
|
||
|
{
|
||
|
checks = pkgs.lib.mkIf (pkgs.stdenv.isLinux) {
|
||
|
flash =
|
||
|
(import ../lib/test-base.nix)
|
||
|
{
|
||
|
name = "flash";
|
||
|
nodes.target = {
|
||
|
virtualisation.emptyDiskImages = [ 4096 ];
|
||
|
virtualisation.memorySize = 3000;
|
||
|
environment.systemPackages = [ self.packages.${pkgs.system}.clan-cli ];
|
||
|
environment.etc."install-closure".source = "${closureInfo}/store-paths";
|
||
|
|
||
|
nix.settings = {
|
||
|
substituters = lib.mkForce [ ];
|
||
|
hashed-mirrors = null;
|
||
|
connect-timeout = lib.mkForce 3;
|
||
|
flake-registry = pkgs.writeText "flake-registry" ''{"flakes":[],"version":2}'';
|
||
|
experimental-features = [
|
||
|
"nix-command"
|
||
|
"flakes"
|
||
|
];
|
||
|
};
|
||
|
};
|
||
|
testScript = ''
|
||
|
start_all()
|
||
|
machine.succeed("clan --flake ${../..} flash --debug --yes --disk main /dev/vdb test_install_machine")
|
||
|
'';
|
||
|
}
|
||
|
{ inherit pkgs self; };
|
||
|
};
|
||
|
};
|
||
|
}
|