forked from fediversity/fediversity
48 lines
1.3 KiB
Nix
48 lines
1.3 KiB
Nix
{
|
|
lib,
|
|
...
|
|
}:
|
|
let
|
|
inherit (lib) mkOption types;
|
|
in
|
|
{
|
|
options = {
|
|
targetSystem = mkOption {
|
|
type = types.str;
|
|
description = "name of the host to deploy to";
|
|
};
|
|
sshOpts = mkOption {
|
|
description = "Extra SSH options (`-o`) to use.";
|
|
type = types.listOf types.str;
|
|
default = [ ];
|
|
example = "ConnectTimeout=60";
|
|
};
|
|
httpBackend = mkOption {
|
|
description = "environment variables to configure the TF HTTP back-end, see <https://developer.hashicorp.com/terraform/language/backend/http#configuration-variables>";
|
|
type = types.attrsOf (types.either types.str types.int);
|
|
};
|
|
proxmox-user = mkOption {
|
|
description = "The ProxmoX user to use.";
|
|
type = types.str;
|
|
default = "root@pam";
|
|
};
|
|
proxmox-password = mkOption {
|
|
description = "The ProxmoX password to use.";
|
|
type = types.str;
|
|
};
|
|
node-name = mkOption {
|
|
description = "the name of the ProxmoX node to use.";
|
|
type = types.str;
|
|
};
|
|
bridge = mkOption {
|
|
description = "The name of the network bridge (defaults to vmbr0).";
|
|
type = types.str;
|
|
default = "vmbr0";
|
|
};
|
|
vlanId = mkOption {
|
|
description = "The VLAN identifier.";
|
|
type = types.int;
|
|
default = 0;
|
|
};
|
|
};
|
|
}
|