26 lines
627 B
Nix
26 lines
627 B
Nix
{ lib, ... }:
|
|
{
|
|
checks = [
|
|
{
|
|
assertion = lib.registry.predicates.uniqueValue (entry: entry.value.domain);
|
|
message = "Route domains must be unique.";
|
|
}
|
|
];
|
|
|
|
type = lib.types.submodule {
|
|
options = {
|
|
domain = lib.mkOption {
|
|
type = lib.types.str;
|
|
example = "files.alexion.dev";
|
|
description = "Public domain served by this reverse-proxy route entry.";
|
|
};
|
|
|
|
port = lib.mkOption {
|
|
type = lib.types.ints.between 1 65535;
|
|
example = 3923;
|
|
description = "Backend TCP port served by the matching address registry entry.";
|
|
};
|
|
};
|
|
};
|
|
}
|