mirror of
https://github.com/TECHNOFAB11/kubenix.git
synced 2025-12-12 16:10:05 +01:00
50 lines
1,008 B
Nix
50 lines
1,008 B
Nix
{
|
|
config,
|
|
lib,
|
|
pkgs,
|
|
...
|
|
}:
|
|
with lib;
|
|
with import ../../lib/docker {inherit lib pkgs;}; let
|
|
testing = config.testing;
|
|
|
|
allImages = unique (flatten (map (t: t.evaled.config.docker.export or []) testing.tests));
|
|
|
|
cfg = config.testing.docker;
|
|
in {
|
|
options.testing.docker = {
|
|
registryUrl = mkOption {
|
|
description = "Docker registry url";
|
|
type = types.str;
|
|
};
|
|
|
|
images = mkOption {
|
|
description = "List of images to export";
|
|
type = types.listOf types.package;
|
|
};
|
|
|
|
copyScript = mkOption {
|
|
description = "Script to copy images to registry";
|
|
type = types.package;
|
|
};
|
|
};
|
|
|
|
config.testing.docker = {
|
|
images = allImages;
|
|
|
|
copyScript = copyDockerImages {
|
|
images = cfg.images;
|
|
dest = "docker://" + cfg.registryUrl;
|
|
};
|
|
};
|
|
|
|
config.testing.common = [
|
|
{
|
|
features = ["docker"];
|
|
options = {
|
|
_file = "testing.docker.registryUrl";
|
|
docker.registry.url = cfg.registryUrl;
|
|
};
|
|
}
|
|
];
|
|
}
|