lldap: update patch
This commit is contained in:
parent
9416e89e35
commit
1f39b4be65
1 changed files with 18 additions and 16 deletions
|
|
@ -72,7 +72,8 @@ index 00000000000000..8b9a915b18f4d9
|
||||||
+ };
|
+ };
|
||||||
+}
|
+}
|
||||||
|
|
||||||
From 850339f833113255afca5c6038e9fafa5b59bbb8 Mon Sep 17 00:00:00 2001
|
|
||||||
|
From 6666c710b77e53ea274af4c4dddcb9251b0ccf18 Mon Sep 17 00:00:00 2001
|
||||||
From: ibizaman <ibizaman@tiserbox.com>
|
From: ibizaman <ibizaman@tiserbox.com>
|
||||||
Date: Wed, 13 Aug 2025 08:15:12 +0200
|
Date: Wed, 13 Aug 2025 08:15:12 +0200
|
||||||
Subject: [PATCH 2/2] lldap: add ensure options
|
Subject: [PATCH 2/2] lldap: add ensure options
|
||||||
|
|
@ -83,13 +84,13 @@ Subject: [PATCH 2/2] lldap: add ensure options
|
||||||
2 files changed, 498 insertions(+), 17 deletions(-)
|
2 files changed, 498 insertions(+), 17 deletions(-)
|
||||||
|
|
||||||
diff --git a/nixos/modules/services/databases/lldap.nix b/nixos/modules/services/databases/lldap.nix
|
diff --git a/nixos/modules/services/databases/lldap.nix b/nixos/modules/services/databases/lldap.nix
|
||||||
index e21deef91f3366..03f321996a3c99 100644
|
index fe956c943281..6097f8d06216 100644
|
||||||
--- a/nixos/modules/services/databases/lldap.nix
|
--- a/nixos/modules/services/databases/lldap.nix
|
||||||
+++ b/nixos/modules/services/databases/lldap.nix
|
+++ b/nixos/modules/services/databases/lldap.nix
|
||||||
@@ -8,6 +8,84 @@
|
@@ -12,6 +12,84 @@ let
|
||||||
let
|
dbUser = "lldap";
|
||||||
cfg = config.services.lldap;
|
localPostgresql = cfg.database.createLocally && cfg.database.type == "postgresql";
|
||||||
format = pkgs.formats.toml { };
|
localMysql = cfg.database.createLocally && cfg.database.type == "mariadb";
|
||||||
+
|
+
|
||||||
+ inherit (lib) mkOption types;
|
+ inherit (lib) mkOption types;
|
||||||
+
|
+
|
||||||
|
|
@ -171,7 +172,7 @@ index e21deef91f3366..03f321996a3c99 100644
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
options.services.lldap = with lib; {
|
options.services.lldap = with lib; {
|
||||||
@@ -15,6 +93,8 @@ in
|
@@ -19,6 +97,8 @@ in
|
||||||
|
|
||||||
package = mkPackageOption pkgs "lldap" { };
|
package = mkPackageOption pkgs "lldap" { };
|
||||||
|
|
||||||
|
|
@ -180,7 +181,7 @@ index e21deef91f3366..03f321996a3c99 100644
|
||||||
environment = mkOption {
|
environment = mkOption {
|
||||||
type = with types; attrsOf str;
|
type = with types; attrsOf str;
|
||||||
default = { };
|
default = { };
|
||||||
@@ -169,6 +249,198 @@ in
|
@@ -203,6 +283,198 @@ in
|
||||||
If that is okay for you and you want to silence the warning, set this option to `true`.
|
If that is okay for you and you want to silence the warning, set this option to `true`.
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|
@ -379,7 +380,7 @@ index e21deef91f3366..03f321996a3c99 100644
|
||||||
};
|
};
|
||||||
|
|
||||||
config = lib.mkIf cfg.enable {
|
config = lib.mkIf cfg.enable {
|
||||||
@@ -185,25 +457,77 @@ in
|
@@ -219,25 +491,77 @@ in
|
||||||
(cfg.settings.ldap_user_pass_file or null) == null || (cfg.settings.ldap_user_pass or null) == null;
|
(cfg.settings.ldap_user_pass_file or null) == null || (cfg.settings.ldap_user_pass or null) == null;
|
||||||
message = "lldap: Both `ldap_user_pass` and `ldap_user_pass_file` settings should not be set at the same time. Set one to `null`.";
|
message = "lldap: Both `ldap_user_pass` and `ldap_user_pass_file` settings should not be set at the same time. Set one to `null`.";
|
||||||
}
|
}
|
||||||
|
|
@ -426,13 +427,13 @@ index e21deef91f3366..03f321996a3c99 100644
|
||||||
];
|
];
|
||||||
|
|
||||||
warnings =
|
warnings =
|
||||||
- lib.optionals (cfg.settings.ldap_user_pass or null != null) [
|
- lib.optionals ((cfg.settings.ldap_user_pass or null) != null) [
|
||||||
+ (lib.optionals (cfg.ensureAdminPassword != null) [
|
+ (lib.optionals (cfg.ensureAdminPassword != null) [
|
||||||
+ ''
|
+ ''
|
||||||
+ lldap: Unsecure option `ensureAdminPassword` is used. Prefer `ensureAdminPasswordFile` instead.
|
+ lldap: Unsecure option `ensureAdminPassword` is used. Prefer `ensureAdminPasswordFile` instead.
|
||||||
+ ''
|
+ ''
|
||||||
+ ])
|
+ ])
|
||||||
+ ++ (lib.optionals (cfg.settings.ldap_user_pass or null != null) [
|
+ ++ (lib.optionals ((cfg.settings.ldap_user_pass or null) != null) [
|
||||||
''
|
''
|
||||||
lldap: Unsecure `ldap_user_pass` setting is used. Prefer `ldap_user_pass_file` instead.
|
lldap: Unsecure `ldap_user_pass` setting is used. Prefer `ldap_user_pass_file` instead.
|
||||||
''
|
''
|
||||||
|
|
@ -468,11 +469,11 @@ index e21deef91f3366..03f321996a3c99 100644
|
||||||
+ ''
|
+ ''
|
||||||
+ ]);
|
+ ]);
|
||||||
|
|
||||||
systemd.services.lldap = {
|
services.lldap.settings.database_url = lib.mkIf cfg.database.createLocally (
|
||||||
description = "Lightweight LDAP server (lldap)";
|
lib.mkDefault (
|
||||||
@@ -226,6 +550,28 @@ in
|
@@ -279,6 +603,28 @@ in
|
||||||
+ ''
|
+ ''
|
||||||
${lib.getExe cfg.package} run --config-file ${format.generate "lldap_config.toml" cfg.settings}
|
exec ${lib.getExe cfg.package} run --config-file ${format.generate "lldap_config.toml" cfg.settings}
|
||||||
'';
|
'';
|
||||||
+ postStart = ''
|
+ postStart = ''
|
||||||
+ export LLDAP_URL=http://127.0.0.1:${toString cfg.settings.http_port}
|
+ export LLDAP_URL=http://127.0.0.1:${toString cfg.settings.http_port}
|
||||||
|
|
@ -500,7 +501,7 @@ index e21deef91f3366..03f321996a3c99 100644
|
||||||
StateDirectory = "lldap";
|
StateDirectory = "lldap";
|
||||||
StateDirectoryMode = "0750";
|
StateDirectoryMode = "0750";
|
||||||
diff --git a/nixos/tests/lldap.nix b/nixos/tests/lldap.nix
|
diff --git a/nixos/tests/lldap.nix b/nixos/tests/lldap.nix
|
||||||
index 8e38d4bdefa31d..47d32c7a2a7bbc 100644
|
index 8e38d4bdefa3..47d32c7a2a7b 100644
|
||||||
--- a/nixos/tests/lldap.nix
|
--- a/nixos/tests/lldap.nix
|
||||||
+++ b/nixos/tests/lldap.nix
|
+++ b/nixos/tests/lldap.nix
|
||||||
@@ -1,6 +1,9 @@
|
@@ -1,6 +1,9 @@
|
||||||
|
|
@ -697,3 +698,4 @@ index 8e38d4bdefa31d..47d32c7a2a7bbc 100644
|
||||||
+ raise Exception(f'Unexpected value for attribute "mygroupattribute": {othergroup.get('mygroupattribute')}')
|
+ raise Exception(f'Unexpected value for attribute "mygroupattribute": {othergroup.get('mygroupattribute')}')
|
||||||
'';
|
'';
|
||||||
}
|
}
|
||||||
|
--
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue