kubenix/modules/base.nix
David Arnold db6d83c61e
fmt
2021-05-13 17:33:58 -04:00

39 lines
924 B
Nix

{ config, lib, ... }:
with lib;
{
options = {
kubenix.project = mkOption {
description = "Name of the project";
type = types.str;
default = "kubenix";
};
_m.features = mkOption {
description = "List of features exposed by module";
type = types.listOf types.str;
default = [ ];
};
_m.propagate = mkOption {
description = "Module propagation options";
type = types.listOf (types.submodule ({ config, ... }: {
options = {
features = mkOption {
description = "List of features that submodule has to have to propagate module";
type = types.listOf types.str;
default = [ ];
};
module = mkOption {
description = "Module to propagate";
type = types.unspecified;
default = { };
};
};
}));
default = [ ];
};
};
}