diff options
author | tv <tv@krebsco.de> | 2015-06-18 23:59:14 +0200 |
---|---|---|
committer | tv <tv@krebsco.de> | 2015-06-19 00:01:09 +0200 |
commit | 5bb10af115dd1421fe9ee8629ceb5877730eaae2 (patch) | |
tree | 860eb925ed4989d9b3af3368418e67db79ccfbb6 | |
parent | 69599fc399c419effd64b04862a41d0c075d6186 (diff) |
host cd: move git config to separate file
-rw-r--r-- | modules/cd/default.nix | 56 | ||||
-rw-r--r-- | modules/cd/git.nix | 59 |
2 files changed, 61 insertions, 54 deletions
diff --git a/modules/cd/default.nix b/modules/cd/default.nix index 1fd2d4b..5d0d309 100644 --- a/modules/cd/default.nix +++ b/modules/cd/default.nix @@ -1,9 +1,10 @@ -{ config, lib, pkgs, ... }: +{ pkgs, ... }: { imports = [ <secrets/hashedPasswords.nix> + ./git.nix ./iptables.nix ./networking.nix ../common/nixpkgs.nix @@ -11,7 +12,6 @@ ../tv/base-cac-CentOS-7-64bit.nix ../tv/ejabberd.nix # XXX echtes modul ../tv/exim-smarthost.nix - ../tv/git ../tv/retiolum.nix ../tv/sanitize.nix ]; @@ -44,58 +44,6 @@ enable = true; }; - services.git = - let - inherit (builtins) readFile; - # TODO lib should already include our stuff - inherit (import ../../lib { inherit lib pkgs; }) addNames git; - in - rec { - enable = true; - - users = addNames { - tv = { pubkey = readFile <pubkeys/tv.ssh.pub>; }; - lass = { pubkey = "xxx"; }; - makefu = { pubkey = "xxx"; }; - }; - - repos = addNames { - shitment = { - desc = "shitment repository"; - hooks = { - post-receive = git.irc-announce { - nick = config.networking.hostName; # TODO make this the default - channel = "#retiolum"; - server = "ire.retiolum"; - }; - }; - public = true; - }; - testing = { - desc = "testing repository"; - hooks = { - post-receive = git.irc-announce { - nick = config.networking.hostName; # TODO make this the default - channel = "#retiolum"; - server = "ire.retiolum"; - }; - }; - public = true; - }; - }; - - rules = with git; with users; with repos; [ - { user = tv; - repo = [ testing shitment ]; - perm = push "refs/*" [ non-fast-forward create delete merge ]; - } - { user = [ lass makefu ]; - repo = [ testing shitment ]; - perm = fetch; - } - ]; - }; - services.journald.extraConfig = '' SystemMaxUse=1G RuntimeMaxUse=128M diff --git a/modules/cd/git.nix b/modules/cd/git.nix new file mode 100644 index 0000000..88d4968 --- /dev/null +++ b/modules/cd/git.nix @@ -0,0 +1,59 @@ +{ config, lib, pkgs, ... }: + +let + inherit (builtins) readFile; + # TODO lib should already include our stuff + inherit (import ../../lib { inherit lib pkgs; }) addNames git; +in + +{ + imports = [ + ../tv/git + ]; + + services.git = rec { + enable = true; + + users = addNames { + tv = { pubkey = readFile <pubkeys/tv.ssh.pub>; }; + lass = { pubkey = "xxx"; }; + makefu = { pubkey = "xxx"; }; + }; + + repos = addNames { + shitment = { + desc = "shitment repository"; + hooks = { + post-receive = git.irc-announce { + nick = config.networking.hostName; # TODO make this the default + channel = "#retiolum"; + server = "ire.retiolum"; + }; + }; + public = true; + }; + testing = { + desc = "testing repository"; + hooks = { + post-receive = git.irc-announce { + nick = config.networking.hostName; # TODO make this the default + channel = "#retiolum"; + server = "ire.retiolum"; + }; + }; + public = true; + }; + }; + + rules = with git; with users; with repos; [ + { user = tv; + repo = [ testing shitment ]; + perm = push "refs/*" [ non-fast-forward create delete merge ]; + } + { user = [ lass makefu ]; + repo = [ testing shitment ]; + perm = fetch; + } + ]; + }; +} |