From f65246132fd1e555b0a1174d6efd389267dae3cf Mon Sep 17 00:00:00 2001 From: tv Date: Fri, 19 Jun 2015 21:40:00 +0200 Subject: cd/git.nix -> tv/git/public.nix --- modules/cd/default.nix | 2 +- modules/cd/git.nix | 73 ----------------------------------------------- modules/tv/git/public.nix | 73 +++++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 74 insertions(+), 74 deletions(-) delete mode 100644 modules/cd/git.nix create mode 100644 modules/tv/git/public.nix diff --git a/modules/cd/default.nix b/modules/cd/default.nix index ca798f8..bdd6cce 100644 --- a/modules/cd/default.nix +++ b/modules/cd/default.nix @@ -8,7 +8,6 @@ in imports = [ - ./git.nix ./iptables.nix ./networking.nix ../common/nixpkgs.nix @@ -16,6 +15,7 @@ in ../tv/base-cac-CentOS-7-64bit.nix ../tv/ejabberd.nix # XXX echtes modul ../tv/exim-smarthost.nix + ../tv/git/public.nix ../tv/retiolum.nix ../tv/sanitize.nix ]; diff --git a/modules/cd/git.nix b/modules/cd/git.nix deleted file mode 100644 index 42b0bc1..0000000 --- a/modules/cd/git.nix +++ /dev/null @@ -1,73 +0,0 @@ -{ config, lib, pkgs, ... }: - -let - inherit (builtins) map readFile; - inherit (lib) concatMap listToAttrs; - # TODO lib should already include our stuff - inherit (import ../../lib { inherit lib pkgs; }) addNames git; - - cd-repos = [ - (public "cgserver") - (public "crude-mail-setup") - (public "dot-xmonad") - (public "hack") - (public "load-env") - (public "make-snapshot") - (public "mime") - (public "much") - (public "nixos-infest") - (public "painload") - (public "regfish") - (public "shitment") - (public "wai-middleware-time") - (public "web-routes-wai-custom") - ]; - - users = addNames { - tv = { pubkey = readFile ; }; - lass = { pubkey = readFile ; }; - uriel = { pubkey = readFile ; }; - makefu = { pubkey = "xxx"; }; - }; - - repos = listToAttrs (map ({ repo, ... }: { name = repo.name; value = repo; }) cd-repos); - - rules = concatMap ({ rules, ... }: rules) cd-repos; - - public = repo-name: - rec { - repo = { - name = repo-name; - 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; [ - { user = tv; - repo = [ repo ]; - perm = push "refs/*" [ non-fast-forward create delete merge ]; - } - { user = [ lass makefu uriel ]; - repo = [ repo ]; - perm = fetch; - } - ]; - }; - -in - -{ - imports = [ - ../tv/git - ]; - - services.git = { - enable = true; - inherit repos rules users; - }; -} diff --git a/modules/tv/git/public.nix b/modules/tv/git/public.nix new file mode 100644 index 0000000..7dc93e8 --- /dev/null +++ b/modules/tv/git/public.nix @@ -0,0 +1,73 @@ +{ config, lib, pkgs, ... }: + +let + inherit (builtins) map readFile; + inherit (lib) concatMap listToAttrs; + # TODO lib should already include our stuff + inherit (import ../../../lib { inherit lib pkgs; }) addNames git; + + public-git-repos = [ + (public "cgserver") + (public "crude-mail-setup") + (public "dot-xmonad") + (public "hack") + (public "load-env") + (public "make-snapshot") + (public "mime") + (public "much") + (public "nixos-infest") + (public "painload") + (public "regfish") + (public "shitment") + (public "wai-middleware-time") + (public "web-routes-wai-custom") + ]; + + users = addNames { + tv = { pubkey = readFile ; }; + lass = { pubkey = readFile ; }; + uriel = { pubkey = readFile ; }; + makefu = { pubkey = "xxx"; }; + }; + + repos = listToAttrs (map ({ repo, ... }: { name = repo.name; value = repo; }) public-git-repos); + + rules = concatMap ({ rules, ... }: rules) public-git-repos; + + public = repo-name: + rec { + repo = { + name = repo-name; + 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; [ + { user = tv; + repo = [ repo ]; + perm = push "refs/*" [ non-fast-forward create delete merge ]; + } + { user = [ lass makefu uriel ]; + repo = [ repo ]; + perm = fetch; + } + ]; + }; + +in + +{ + imports = [ + ./. + ]; + + services.git = { + enable = true; + inherit repos rules users; + }; +} -- cgit v1.2.3