aboutsummaryrefslogtreecommitdiffhomepage
path: root/cmd/sharefs/test/default.nix
blob: e963eaa6a5943765af27616bdad09d6f1d66ca0f (plain)
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
35
36
37
38
39
40
41
42
43
44
{
  testers,

  system,
  self,
}:
testers.nixosTest {
  name = "sharefs";
  nodes.machine =
    { options, pkgs, ... }:
    let
      fhs =
        let
          hakurei = options.environment.hakurei.package.default;
        in
        pkgs.buildFHSEnv {
          pname = "hakurei-fhs";
          inherit (hakurei) version;
          targetPkgs = _: hakurei.targetPkgs;
          extraOutputsToInstall = [ "dev" ];
          profile = ''
            export PKG_CONFIG_PATH="/usr/share/pkgconfig:$PKG_CONFIG_PATH"
          '';
        };
    in
    {
      environment.systemPackages = [
        # For go tests:
        (pkgs.writeShellScriptBin "sharefs-workload-hakurei-tests" ''
          cp -r "${self.packages.${system}.hakurei.src}" "/sdcard/hakurei" && cd "/sdcard/hakurei"
          ${fhs}/bin/hakurei-fhs -c 'ROSA_SKIP_BINFMT=1 CC="clang -O3 -Werror" go test ./...'
        '')
      ];

      imports = [
        ./configuration.nix

        self.nixosModules.hakurei
        self.inputs.home-manager.nixosModules.home-manager
      ];
    };

  testScript = builtins.readFile ./test.py;
}