Make woodpecker package derivation option

This commit is contained in:
TEC 2022-08-14 16:23:29 +08:00
parent 1708ddf21a
commit 8a2a7500f0
Signed by: tec
SSH Key Fingerprint: SHA256:eobz41Mnm0/iYWBvWThftS0ElEs1ftBr6jamutnXc/A
2 changed files with 17 additions and 3 deletions

View File

@ -14,6 +14,13 @@ in
description = lib.mdDoc "Enable Woodpecker agent.";
};
package = mkOption {
default = pkgs.woodpecker-agent;
type = types.package;
defaultText = literalExpression "pkgs.woodpecker-agent";
description = lib.mdDoc "woodpecker-agent derivation to use";
};
user = mkOption {
type = types.str;
default = "woodpecker-agent";
@ -55,7 +62,7 @@ in
Type = "simple";
User = cfg.user;
Group = "woodpecker-agent";
ExecStart = "${pkgs.woodpecker-agent}/bin/woodpecker-agent";
ExecStart = "${cfg.package}/bin/woodpecker-agent";
Restart = "always";
# TODO add security/sandbox params.
};

View File

@ -17,6 +17,13 @@ in
description = lib.mdDoc "Enable Woodpecker Server.";
};
package = mkOption {
default = pkgs.woodpecker-server;
type = types.package;
defaultText = literalExpression "pkgs.woodpecker-server";
description = lib.mdDoc "woodpecker-server derivation to use";
};
stateDir = mkOption {
default = "/var/lib/woodpecker-server";
type = types.str;
@ -188,9 +195,9 @@ in
ExecStart="/bin/sh -c '" +
"WOODPECKER_GITEA_CLIENT=$(cat \"${cfg.giteaClientIdFile}\") " +
"WOODPECKER_GITEA_SECRET=$(cat \"${cfg.giteaClientSecretFile}\") " +
"\"${pkgs.woodpecker-server}/bin/woodpecker-server\"'";
"\"${cfg.package}/bin/woodpecker-server\"'";
} else {
ExecStart = "${pkgs.woodpecker-server}/bin/woodpecker-server";
ExecStart = "${cfg.package}/bin/woodpecker-server";
})
];
environment = mkMerge [