mirror of
https://github.com/NixOS/nixpkgs.git
synced 2025-07-14 14:10:33 +03:00
nixos/freenet: refactor, migrate to runTest (#391886)
This commit is contained in:
commit
03bf44b9ea
3 changed files with 30 additions and 47 deletions
|
@ -1,54 +1,39 @@
|
|||
# NixOS module for Freenet daemon
|
||||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
let
|
||||
|
||||
let
|
||||
cfg = config.services.freenet;
|
||||
varDir = "/var/lib/freenet";
|
||||
|
||||
in
|
||||
|
||||
{
|
||||
|
||||
### configuration
|
||||
|
||||
options = {
|
||||
|
||||
services.freenet = {
|
||||
|
||||
enable = lib.mkOption {
|
||||
type = lib.types.bool;
|
||||
default = false;
|
||||
description = "Enable the Freenet daemon";
|
||||
};
|
||||
enable = lib.mkEnableOption "Freenet daemon";
|
||||
|
||||
nice = lib.mkOption {
|
||||
type = lib.types.int;
|
||||
default = 10;
|
||||
description = "Set the nice level for the Freenet daemon";
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
### implementation
|
||||
|
||||
config = lib.mkIf cfg.enable {
|
||||
|
||||
systemd.services.freenet = {
|
||||
description = "Freenet daemon";
|
||||
after = [ "network.target" ];
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
serviceConfig.ExecStart = "${pkgs.freenet}/bin/freenet";
|
||||
serviceConfig.User = "freenet";
|
||||
serviceConfig.UMask = "0007";
|
||||
serviceConfig.WorkingDirectory = varDir;
|
||||
serviceConfig.Nice = cfg.nice;
|
||||
serviceConfig = {
|
||||
ExecStart = lib.getExe pkgs.freenet;
|
||||
User = "freenet";
|
||||
UMask = "0007";
|
||||
WorkingDirectory = varDir;
|
||||
Nice = cfg.nice;
|
||||
};
|
||||
};
|
||||
|
||||
users.users.freenet = {
|
||||
|
@ -62,4 +47,5 @@ in
|
|||
users.groups.freenet.gid = config.ids.gids.freenet;
|
||||
};
|
||||
|
||||
meta.maintainers = with lib.maintainers; [ nagy ];
|
||||
}
|
||||
|
|
|
@ -492,7 +492,7 @@ in
|
|||
inherit runTest;
|
||||
forgejoPackage = pkgs.forgejo-lts;
|
||||
};
|
||||
freenet = handleTest ./freenet.nix { };
|
||||
freenet = runTest ./freenet.nix;
|
||||
freeswitch = handleTest ./freeswitch.nix { };
|
||||
freetube = discoverTests (import ./freetube.nix);
|
||||
freshrss = handleTest ./freshrss { };
|
||||
|
|
|
@ -1,24 +1,21 @@
|
|||
import ./make-test-python.nix (
|
||||
{ pkgs, ... }:
|
||||
{
|
||||
name = "freenet";
|
||||
meta = with pkgs.lib.maintainers; {
|
||||
maintainers = [ nagy ];
|
||||
};
|
||||
{ lib, ... }:
|
||||
|
||||
nodes = {
|
||||
machine =
|
||||
{ ... }:
|
||||
{
|
||||
services.freenet.enable = true;
|
||||
};
|
||||
};
|
||||
{
|
||||
name = "freenet";
|
||||
meta = {
|
||||
maintainers = with lib.maintainers; [ nagy ];
|
||||
};
|
||||
|
||||
testScript = ''
|
||||
machine.wait_for_unit("freenet.service")
|
||||
machine.wait_for_open_port(8888)
|
||||
machine.wait_until_succeeds("curl -sfL http://localhost:8888/ | grep Freenet")
|
||||
machine.succeed("systemctl stop freenet")
|
||||
'';
|
||||
}
|
||||
)
|
||||
nodes = {
|
||||
machine = {
|
||||
services.freenet.enable = true;
|
||||
};
|
||||
};
|
||||
|
||||
testScript = ''
|
||||
machine.wait_for_unit("freenet.service")
|
||||
machine.wait_for_open_port(8888)
|
||||
machine.wait_until_succeeds("curl -sfL http://localhost:8888/ | grep Freenet")
|
||||
machine.succeed("systemctl stop freenet")
|
||||
'';
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue