2023-06-19 00:41:49 +02:00
|
|
|
{ elib, vars, ... }:
|
2023-06-15 23:10:07 +02:00
|
|
|
let
|
|
|
|
inherit (elib)
|
|
|
|
nfsVolume
|
|
|
|
nomadJob;
|
|
|
|
in
|
|
|
|
{
|
|
|
|
resource."vault_policy"."dovecot-policy" = nfsVolume {
|
|
|
|
name = "dovecot-policy";
|
|
|
|
policy = ''
|
|
|
|
path "kv/data/cluster/dovecot" {
|
|
|
|
capabilities = ["read"]
|
|
|
|
}
|
|
|
|
'';
|
|
|
|
};
|
|
|
|
|
|
|
|
resource."vault_policy"."getmail-policy" = nfsVolume {
|
|
|
|
name = "getmail-policy";
|
|
|
|
policy = ''
|
|
|
|
path "kv/data/cluster/getmail" {
|
|
|
|
capabilities = ["read"]
|
|
|
|
}
|
|
|
|
'';
|
|
|
|
};
|
|
|
|
|
|
|
|
resource."nomad_volume"."dovecot_maildir" = {
|
|
|
|
volume_name = "org.democratic-csi.nfs";
|
|
|
|
access_mode = "multi-node-multi-writer";
|
|
|
|
server = "blowhole.hosts.in.redalder.org";
|
|
|
|
share = "/var/nfs/dovecot/maildir";
|
|
|
|
mount_flags = [ "nfsvers=3" "hard" "async" ];
|
|
|
|
};
|
|
|
|
|
|
|
|
resource."nomad_volume"."mail-configuration" = {
|
|
|
|
volume_name = "mail-configuration";
|
|
|
|
access_mode = "single-node-writer";
|
|
|
|
server = "blowhole.hosts.in.redalder.org";
|
|
|
|
share = "/var/nfs/mail-configuration";
|
|
|
|
mount_flags = [ "nfsvers=3" "hard" "async" ];
|
|
|
|
};
|
|
|
|
|
|
|
|
resource."nomad_job"."email" = {
|
|
|
|
jobspec = ./job.hcl;
|
|
|
|
vars = {
|
2023-06-19 00:41:49 +02:00
|
|
|
flake_ref = "${vars.flake_host}?rev=${vars.flake_rev}&ref=${vars.flake_ref}";
|
|
|
|
flake_sha = vars.flake_sha;
|
2023-06-15 23:10:07 +02:00
|
|
|
};
|
|
|
|
};
|
|
|
|
}
|