diff --git a/modules/common/krebs-keys.nix b/modules/common/krebs-keys.nix new file mode 100644 index 000000000..8df163058 --- /dev/null +++ b/modules/common/krebs-keys.nix @@ -0,0 +1,14 @@ +# alle public keys der krebsminister fuer R in krebs repos +{ config, ... }: + +with import ../lass/sshkeys.nix { + config.sshKeys.lass.pub = config.sshKeys.lass.pub; + config.sshKeys.uriel.pub = config.sshKeys.uriel.pub; + }; +{ + imports = [ + ./sshkeys.nix + ]; + + config.sshKeys.tv.pub = "ssh-rsaAAAAB3NzaC1yc2EAAAADAQABAAAEAQDFR//RnCvEZAt0F6ExDsatKZ/DDdifanuSL360mqOhaFieKI34RoOwfQT9T+Ga52Vh5V2La6esvlph686EdgzeKLvDoxEwFM9ZYFBcMrNzu4bMTlgE7YUYw5JiORyXNfznBGnme6qpuvx9ibYhUyiZo99kM8ys5YrUHrP2JXQJMezDFZHxT4GFMOuSdh/1daGoKKD6hYL/jEHX8CI4E3BSmKK6ygYr1fVX0K0Tv77lIi5mLXucjR7CytWYWYnhM6DC3Hxpv2zRkPgf3k0x/Y1hrw3V/r0Me5h90pd2C8pFaWA2ZoUT/fmyVqvx1tZPYToU/O2dMItY0zgx2kR0yD+6g7Aahz3R+KlXkV8k5c8bbTbfGnZWDR1ZlbLRM9Yt5vosfwapUD90MmVkpmR3wUkO2sUKi80QfC7b4KvSDXQ+MImbGxMaU5Bnsq1PqLN95q+uat3nlAVBAELkcx51FlE9CaIS65y4J7FEDg8BE5JeuCNshh62VSYRXVSFt8bk3f/TFGgzC8OIo14BhVmiRQQ503Z1sROyf5xLX2a/EJavMm1i2Bs2TH6ROKY9z5Pz8hT5US0r381V8oG7TZyLF9HTtoy3wCYsgWA5EmLanjAsVU2YEeAA0rxzdtYP8Y2okFiJ6u+M4HQZ3Wg3peSodyp3vxdYce2vk4EKeqEFuuS82850DYb7Et7fmp+wQQUT8Q/bMO0DreWjHoMM5lE4LJ4ME6AxksmMiFtfo/4Fe2q9D+LAqZ+ANOcv9M+8Rn6ngiYmuRNd0l/a02q1PEvO6vTfXgcl4f7Z1IULHPEaDNZHCJS1K5RXYFqYQ6OHsTmOm7hnwaRAS97+VFMo1i5uvTx9nYaAcY7yzq3Ckfb67dMBKApGOpJpkvPgfrP7bgBO5rOZXM1opXqVPb09nljAhhAhyCTh1e/8+mJrBo0cLQ/LupQzVxGDgm3awSMPxsZAN45PSWz76zzxdDa1MMo51do+VJHfs7Wl0NcXAQrniOBYL9Wqt0qNkn1gY5smkkISGeQ/vxNap4MmzeZE7b5fpOy+2fpcRVQLpc4nooQzJvSVTFz+25lgZ6iHf45K87gQFMIAri1Pf/EDDpL87az+bRWvWi+BA2kMe1kf+Ay1LyMz8r+g51H0ma0bNFh6+fbWMfUiD9JCepIObclnUJ4NlWfcgHxTf17d/4tl6z4DTcLpCCk8Da77JouSHgvtcRbRlFV1OfhWZLXUsrlfpaQTiItv6TGIr3k7+7b66o3Qw/GQVs5GmYifaIZIz8n8my4XjkaMBd0SZfBzzvFjHMq6YUP9+SbjvReqofuoO+5tW1wTYZXitFFBfwuHlXm6w77K5QDBW6olT7pat41/F5eGxLcz tv@wu"; +} diff --git a/modules/common/krebs-repos.nix b/modules/common/krebs-repos.nix new file mode 100644 index 000000000..86f373123 --- /dev/null +++ b/modules/common/krebs-repos.nix @@ -0,0 +1,36 @@ +{ lib, ... }: + +let + inherit (lib) mkDefault; + + mkSecureRepo = name: + { inherit name; + value = { + users = { + lass = mkDefault "R"; + tv = mkDefault "R"; + makefu = mkDefault "R"; + }; + }; + }; + + mkRepo = name: + { inherit name; + value = { + users = { + lass = mkDefault "R"; + tv = mkDefault "R"; + makefu = mkDefault "R"; + }; + }; + }; + +in { + services.gitolite.repos = + (lib.listToAttrs (map mkSecureRepo [ "brain" ])) // + (lib.listToAttrs (map mkRepo [ + "painload" + "services" + "hosts" + ])); +} diff --git a/modules/mors/repos.nix b/modules/mors/repos.nix index d54d43725..e31ba9481 100644 --- a/modules/mors/repos.nix +++ b/modules/mors/repos.nix @@ -3,6 +3,8 @@ { imports = [ ../lass/gitolite-base.nix + ../common/krebs-keys.nix + ../common/krebs-repos.nix ]; services.gitolite = { @@ -42,20 +44,17 @@ extraConfig = "option hook.post-receive = irc-announce"; }; - painload = { - users = { - lass = "RW+"; - tv = "R"; - makefu = "R"; - }; - extraConfig = "option hook.post-receive = irc-announce"; - }; - brain = { users = { lass = "RW+"; - tv = "R"; - makefu = "R"; + }; + extraConfig = "option hook.post-receive = irc-announce"; + #hooks.post-receive = irc-announce; + }; + + painload = { + users = { + lass = "RW+"; }; extraConfig = "option hook.post-receive = irc-announce"; }; @@ -63,9 +62,6 @@ services = { users = { lass = "RW+"; - tv = "R"; - makefu = "R"; - reaktor = "R"; }; extraConfig = "option hook.post-receive = irc-announce"; }; diff --git a/modules/uriel/repos.nix b/modules/uriel/repos.nix index d54d43725..e31ba9481 100644 --- a/modules/uriel/repos.nix +++ b/modules/uriel/repos.nix @@ -3,6 +3,8 @@ { imports = [ ../lass/gitolite-base.nix + ../common/krebs-keys.nix + ../common/krebs-repos.nix ]; services.gitolite = { @@ -42,20 +44,17 @@ extraConfig = "option hook.post-receive = irc-announce"; }; - painload = { - users = { - lass = "RW+"; - tv = "R"; - makefu = "R"; - }; - extraConfig = "option hook.post-receive = irc-announce"; - }; - brain = { users = { lass = "RW+"; - tv = "R"; - makefu = "R"; + }; + extraConfig = "option hook.post-receive = irc-announce"; + #hooks.post-receive = irc-announce; + }; + + painload = { + users = { + lass = "RW+"; }; extraConfig = "option hook.post-receive = irc-announce"; }; @@ -63,9 +62,6 @@ services = { users = { lass = "RW+"; - tv = "R"; - makefu = "R"; - reaktor = "R"; }; extraConfig = "option hook.post-receive = irc-announce"; };