ma scrape: init
This commit is contained in:
parent
0908acc616
commit
5d4e03e227
6
makefu/2configs/deployment/scrape/default.nix
Normal file
6
makefu/2configs/deployment/scrape/default.nix
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
{
|
||||||
|
imports = [
|
||||||
|
./elkstack.nix
|
||||||
|
./selenium.nix
|
||||||
|
];
|
||||||
|
}
|
65
makefu/2configs/deployment/scrape/selenium.nix
Normal file
65
makefu/2configs/deployment/scrape/selenium.nix
Normal file
@ -0,0 +1,65 @@
|
|||||||
|
{config, pkgs, lib, ...}:
|
||||||
|
with <stockholm/lib>;
|
||||||
|
let
|
||||||
|
selenium-pw = <secrets/selenium-vncpasswd>;
|
||||||
|
in {
|
||||||
|
services.jenkinsSlave.enable = true;
|
||||||
|
users.users.selenium = {
|
||||||
|
uid = genid "selenium";
|
||||||
|
extraGroups = [ "plugdev" ];
|
||||||
|
};
|
||||||
|
|
||||||
|
fonts.enableFontDir = true;
|
||||||
|
|
||||||
|
# networking.firewall.allowedTCPPorts = [ 5910 ];
|
||||||
|
|
||||||
|
systemd.services.selenium-X11 =
|
||||||
|
{
|
||||||
|
description = "X11 vnc for selenium";
|
||||||
|
wantedBy = [ "multi-user.target" ];
|
||||||
|
path = [ pkgs.xorg.xorgserver pkgs.tightvnc pkgs.dwm ];
|
||||||
|
environment =
|
||||||
|
{
|
||||||
|
DISPLAY = ":10";
|
||||||
|
};
|
||||||
|
script = ''
|
||||||
|
set -ex
|
||||||
|
[ -e /tmp/.X10-lock ] && ( set +e ; chmod u+w /tmp/.X10-lock ; rm /tmp/.X10-lock )
|
||||||
|
[ -e /tmp/.X11-unix/X10 ] && ( set +e ; chmod u+w /tmp/.X11-unix/X10 ; rm /tmp/.X11-unix/X10 )
|
||||||
|
mkdir -p ~/.vnc
|
||||||
|
cp -f ${selenium-pw} ~/.vnc/passwd
|
||||||
|
chmod go-rwx ~/.vnc/passwd
|
||||||
|
echo > ~/.vnc/xstartup
|
||||||
|
chmod u+x ~/.vnc/xstartup
|
||||||
|
vncserver $DISPLAY -geometry 1280x1024 -depth 24 -name jenkins -ac
|
||||||
|
dwm
|
||||||
|
'';
|
||||||
|
preStop = ''
|
||||||
|
vncserver -kill $DISPLAY
|
||||||
|
'';
|
||||||
|
serviceConfig = {
|
||||||
|
User = "selenium";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
systemd.services.selenium-server =
|
||||||
|
{
|
||||||
|
description = "selenium-server";
|
||||||
|
wantedBy = [ "multi-user.target" ];
|
||||||
|
requires = [ "selenium-X11.service" ];
|
||||||
|
path = [ pkgs.chromium
|
||||||
|
pkgs.firefoxWrapper ];
|
||||||
|
environment =
|
||||||
|
{
|
||||||
|
DISPLAY = ":10";
|
||||||
|
};
|
||||||
|
script = ''
|
||||||
|
${pkgs.selenium-server-standalone}/bin/selenium-server -Dwebdriver.enable.native.events=1
|
||||||
|
'';
|
||||||
|
serviceConfig = {
|
||||||
|
User = "selenium";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
}
|
Loading…
Reference in New Issue
Block a user