* Periodically update the content-addressed tarball mirror.
svn path=/configurations/trunk/tud/; revision=34678
Eelco Dolstra committed
Jan 15, 2013 at 00:17 UTC
a5a582c0668f65492d658b795f21d2dbab26b68a
1 file changed
+21
cartman.nix
+21
@@ -295,6 +295,7 @@ rec {
295
#"15 0 * * * root (TZ=CET date; ${pkgs.rsync}/bin/rsync -razv --numeric-ids --delete /data/postgresql /data/webserver/tarballs unixhome.st.ewi.tudelft.nl::bfarm/) >> /var/log/backup.log 2>&1"
296
"* * * * * root ${pkgs.python}/bin/python ${ZabbixApacheUpdater} -z 192.168.1.5 -c cartman"
297
"40 * * * * root ${duplicityBackup} &>> /var/log/backup-duplicity.log"
298
+ "30 1 * * * root ${config.system.build.systemd}/bin/systemctl start mirror-tarballs.service"
299
300
# Force the sixxs tunnel to stay alive by periodically
301
# pinging the other side. This is necessary to remain
@@ -685,4 +686,24 @@ rec {
686
boot.systemd.services.httpd.serviceConfig.CPUShares = 1000;
687
boot.systemd.services.httpd.serviceConfig.MemoryLimit = "1500M";
688
boot.systemd.services.httpd.serviceConfig.ControlGroupAttribute = [ "memory.memsw.limit_in_bytes 1500M" ];
689
+
690
+ users.extraUsers.tarball-mirror =
691
+ { description = "Nixpkg starball mirroring user";
692
+ home = "/home/tarball-mirror";
693
+ createHome = true;
694
+ useDefaultShell = true;
695
+ openssh.authorizedKeys.keys = singleton "ssh-dss AAAAB3NzaC1kc3MAAACBAOo3foMFsYvc+LEVVTAeXpaxdOFG6O2NE9coxZYN6UtwE477GwkvZ4uKymAekq3TB8I6dDg4QFfE27fIip/rQHJ/Rus+KsxwnTbwPzE0WcZVpkKQsepsoqLkfwMpiPfn5/oxcnJsimwRY/E95aJmmOHdGaYWrc0t4ARa+6teUgdFAAAAFQCSQq2Wil0/X4hDypGGUKlKvYyaWQAAAIAy/0fSDnz1tZOQBGq7q78y406HfWghErrVlrW9g+foJQG5pgXXcdJs9JCIrlaKivUKITDsYnQaCjrZaK8eHnc4ksbkSLfDOxFnR5814ulCftrgEDOv9K1UU3pYketjFMvQCA2U48lR6jG/99CPNXPH55QEFs8H97cIsdLQw9wM4gAAAIEAmzWZlXLzIf3eiHQggXqvw3+C19QvxQITcYHYVTx/XYqZi1VZ/fkY8bNmdcJsWFyOHgEhpEca+xM/SNvH/14rXDmt0wtclLEx/4GVLi59hQCnnKqv7HzJg8RF4v6XTiROBAEEdb4TaFuFn+JCvqPzilTzXTexvZKJECOvfYcY+10= eelco.dolstra@logicblox.com";
696
+ };
697
+
698
+ boot.systemd.services.mirror-tarballs =
699
+ { description = "Mirror Nixpkgs tarballs";
700
+ path = [ config.environment.nix pkgs.curl ];
701
+ #environment.DRY_RUN = "1";
702
+ environment.HYDRA_DISALLOW_UNFREE = "1";
703
+ environment.NIX_PATH = "nixpkgs=/home/tarball-mirror/nixpkgs";
704
+ environment.NIX_REMOTE = "daemon";
705
+ serviceConfig.User = "tarball-mirror";
706
+ script = "exec /etc/nixos/nixpkgs/maintainers/scripts/copy-tarballs.sh";
707
+ };
708
+
709
}