};
config = lib.mkIf config.myServices.buildbot.enable {
- services.backup.profiles.buildbot = {
+ services.duplyBackup.profiles.buildbot = {
rootDir = varDir;
};
ids.uids.buildbot = myconfig.env.buildbot.user.uid;
system.activationScripts = lib.attrsets.mapAttrs' (k: project: lib.attrsets.nameValuePair "buildbot-${project.name}" {
deps = [ "users" "wrappers" ];
- text = project.activationScript;
+ text = ''
+ install -m 755 -o buildbot -g buildbot -d ${varDir}/${project.name}
+
+ ${project.activationScript}
+ '';
}) myconfig.env.buildbot.projects;
secrets.keys = (
)}
'';
environment = let
- project_env = lib.attrsets.mapAttrs' (k: v: lib.attrsets.nameValuePair "BUILDBOT_${k}" v) project.environment;
+ project_env = with lib.attrsets;
+ mapAttrs' (k: v: nameValuePair "BUILDBOT_${k}" v) project.environment //
+ mapAttrs' (k: v: nameValuePair "BUILDBOT_PATH_${k}" (v pkgs)) (attrByPath ["builderPaths"] {} project);
buildbot_config = pkgs.python3Packages.buildPythonPackage (rec {
name = "buildbot_config-${project.name}";
src = ./projects + "/${project.name}";