]> git.immae.eu Git - perso/Immae/Config/Nix.git/commitdiff
Remove gitolite password from nix store
authorIsmaël Bouya <ismael.bouya@normalesup.org>
Sat, 13 Jun 2020 21:14:49 +0000 (23:14 +0200)
committerIsmaël Bouya <ismael.bouya@normalesup.org>
Sat, 13 Jun 2020 21:14:49 +0000 (23:14 +0200)
modules/private/gitolite/default.nix
modules/private/gitolite/gitolite_ldap_groups.sh

index 1549c94530c6b10ad4f2528632f64e1eb11eb471..e8ccc7d67777ffc15e6cb654c478e7568275ba6c 100644 (file)
@@ -20,6 +20,14 @@ in {
     };
     networking.firewall.allowedTCPPorts = [ 9418 ];
 
+    secrets.keys = [{
+      dest = "gitolite/ldap_password";
+      user = "gitolite";
+      group = "gitolite";
+      permissions = "0400";
+      text = config.myEnv.tools.gitolite.ldap.password;
+    }];
+
     services.gitDaemon = {
       enable = true;
       user = "gitolite";
@@ -34,7 +42,7 @@ in {
       } ''
         makeWrapper "${./gitolite_ldap_groups.sh}" "$out" \
           --prefix PATH : ${lib.makeBinPath deps} \
-          --set LDAP_PASS ${pkgs.lib.escapeShellArg config.myEnv.tools.gitolite.ldap.password}
+          --set LDAP_PASS_PATH ${config.secrets.fullPaths."gitolite/ldap_password"}
         '';
     in {
       deps = [ "users" ];
@@ -50,6 +58,7 @@ in {
     };
 
     users.users.wwwrun.extraGroups = [ "gitolite" ];
+    users.users.gitolite.extraGroups = [ "keys" ];
 
     users.users.gitolite.packages = let
       python-packages = python-packages: with python-packages; [
index 7db0da4093a701435cc9d83269e6f6e035247c53..3d7117e728f0ca80201c3a5492f390043602f8c0 100755 (executable)
@@ -3,7 +3,7 @@
 uid_param="$1"
 ldap_host="ldap.immae.eu"
 ldap_binddn="cn=gitolite,ou=services,dc=immae,dc=eu"
-ldap_bindpw="$LDAP_PASS"
+ldap_bindpw="$(cat $LDAP_PASS_PATH)"
 ldap_searchbase="dc=immae,dc=eu"
 ldap_scope="subtree"