extraGroups = [ "keys" ];
};
+ services.websites.tools.watchPaths = lib.attrsets.mapAttrsToList
+ (k: project: "/var/secrets/buildbot/${project.name}/webhook-httpd-include")
+ myconfig.env.buildbot.projects;
+
services.websites.tools.vhostConfs.git.extraConfig = lib.attrsets.mapAttrsToList (k: project: ''
RedirectMatch permanent "^/buildbot/${project.name}$" "/buildbot/${project.name}/"
RewriteEngine On
}
];
+ services.filesWatcher = lib.attrsets.mapAttrs' (k: project: lib.attrsets.nameValuePair "buildbot-${project.name}" {
+ restart = true;
+ paths = [
+ "/var/secrets/buildbot/ldap"
+ "/var/secrets/buildbot/ssh_key"
+ ] ++ lib.attrsets.mapAttrsToList (k: v: "/var/secrets/buildbot/${project.name}/${k}") project.secrets;
+ }) myconfig.env.buildbot.projects;
+
systemd.services = lib.attrsets.mapAttrs' (k: project: lib.attrsets.nameValuePair "buildbot-${project.name}" {
description = "Buildbot Continuous Integration Server ${project.name}.";
after = [ "network-online.target" ];