nixos/gitea: add option to disable registration
Although this can be added to `extraOptions` I figured that it makes sense to add an option to explicitly promote this feature in our documentation since most of the self-hosted gitea instances won't be intended for common use I guess. Also added a notice that this should be added after the initial deploy as you have to register yourself using that feature unless the install wizard is used.
This commit is contained in:
parent
9651cc7a93
commit
ad3a50e25b
|
@ -46,6 +46,9 @@ let
|
|||
ROOT_PATH = ${cfg.log.rootPath}
|
||||
LEVEL = ${cfg.log.level}
|
||||
|
||||
[service]
|
||||
DISABLE_REGISTRATION = ${boolToString cfg.disableRegistration}
|
||||
|
||||
${cfg.extraConfig}
|
||||
'';
|
||||
in
|
||||
|
@ -248,6 +251,18 @@ in
|
|||
description = "Upper level of template and static files path.";
|
||||
};
|
||||
|
||||
disableRegistration = mkEnableOption "the registration lock" // {
|
||||
description = ''
|
||||
By default any user can create an account on this <literal>gitea</literal> instance.
|
||||
This can be disabled by using this option.
|
||||
|
||||
<emphasis>Note:</emphasis> please keep in mind that this should be added after the initial
|
||||
deploy unless <link linkend="opt-services.gitea.useWizard">services.gitea.useWizard</link>
|
||||
is <literal>true</literal> as the first registered user will be the administrator if
|
||||
no install wizard is used.
|
||||
'';
|
||||
};
|
||||
|
||||
extraConfig = mkOption {
|
||||
type = types.str;
|
||||
default = "";
|
||||
|
|
|
@ -64,6 +64,7 @@ with pkgs.lib;
|
|||
machine =
|
||||
{ config, pkgs, ... }:
|
||||
{ services.gitea.enable = true;
|
||||
services.gitea.disableRegistration = true;
|
||||
};
|
||||
|
||||
testScript = ''
|
||||
|
@ -72,6 +73,7 @@ with pkgs.lib;
|
|||
$machine->waitForUnit('gitea.service');
|
||||
$machine->waitForOpenPort('3000');
|
||||
$machine->succeed("curl --fail http://localhost:3000/");
|
||||
$machine->succeed("curl --fail http://localhost:3000/user/sign_up | grep 'Registration is disabled. Please contact your site administrator.'");
|
||||
'';
|
||||
};
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue