46 lines
1.1 KiB
Nix
46 lines
1.1 KiB
Nix
{ pkgs ? import ../pkgs.nix, arionTestingFlags ? {} }:
|
|
let
|
|
inherit (pkgs) nixosTest recurseIntoAttrs arion lib;
|
|
|
|
hasEvalModulesType = (lib.evalModules { modules = [ {} ]; })?type;
|
|
|
|
in
|
|
|
|
recurseIntoAttrs {
|
|
|
|
test = nixosTest ./arion-test;
|
|
|
|
nixosModuleWithDocker =
|
|
lib.optionalAttrs
|
|
hasEvalModulesType
|
|
(
|
|
import ./nixos-virtualization-arion-test/test.nix pkgs {
|
|
virtualisation.arion.backend = "docker";
|
|
}
|
|
);
|
|
|
|
nixosModuleWithPodman =
|
|
lib.optionalAttrs
|
|
(hasEvalModulesType && arionTestingFlags.nixosHasPodmanDockerSocket)
|
|
(
|
|
import ./nixos-virtualization-arion-test/test.nix pkgs {
|
|
virtualisation.arion.backend = "podman-socket";
|
|
}
|
|
);
|
|
|
|
testWithPodman =
|
|
if arionTestingFlags.nixosHasPodmanDockerSocket
|
|
then nixosTest (pkgs.callPackage ./arion-test { usePodman = true; })
|
|
else {};
|
|
|
|
testBuild = arion.build {
|
|
|
|
# To be more accurately, you can do
|
|
# pkgs = import ../examples/minimal/arion-pkgs.nix;
|
|
# but this is quite efficient:
|
|
inherit pkgs;
|
|
|
|
modules = [ ../examples/minimal/arion-compose.nix ];
|
|
};
|
|
|
|
}
|