Try doing runner on Jude
This commit is contained in:
+28
-16
@@ -1,4 +1,4 @@
|
||||
{ pkgs, ... }:
|
||||
{ pkgs, config, ... }:
|
||||
|
||||
{
|
||||
environment.systemPackages = with pkgs; [
|
||||
@@ -11,6 +11,7 @@
|
||||
virt-manager
|
||||
vmware-workstation
|
||||
vmfs-tools
|
||||
xorriso
|
||||
];
|
||||
|
||||
# Give my user access to the libvirtd process
|
||||
@@ -28,8 +29,6 @@
|
||||
enableExtensionPack = true;
|
||||
};
|
||||
|
||||
vmware.host.enable = false;
|
||||
|
||||
waydroid.enable = false;
|
||||
lxd.enable = false;
|
||||
};
|
||||
@@ -39,20 +38,33 @@
|
||||
boot.extraModprobeConfig = "options kvm_amd nested=1";
|
||||
|
||||
systemd.services = {
|
||||
vbox = {
|
||||
gitlab-runner = {
|
||||
conflicts = [ "libvirtd.service" ];
|
||||
serviceConfig = {
|
||||
Type = "oneshot";
|
||||
RemainAfterExit = "yes";
|
||||
ExecStart = [
|
||||
"rmmod kvm_amd"
|
||||
"rmmod kvm"
|
||||
];
|
||||
ExecStop = [
|
||||
"rmmod vboxnetflt"
|
||||
"rmmod vboxnetadp"
|
||||
"rmmod vboxdrv"
|
||||
];
|
||||
preStart = builtins.concatStringsSep "\n" [
|
||||
"${pkgs.kmod}/bin/modprobe vboxnetflt vboxdrv"
|
||||
"${pkgs.kmod}/bin/modprobe vboxnetadp"
|
||||
];
|
||||
postStop = "${pkgs.kmod}/bin/rmmod vboxnetflt vboxnetadp vboxdrv";
|
||||
wantedBy = pkgs.lib.mkForce [];
|
||||
serviceConfig.User = "root";
|
||||
};
|
||||
libvirtd = {
|
||||
preStart = "${pkgs.kmod}/bin/modprobe kvm_amd";
|
||||
postStop = "${pkgs.kmod}/bin/rmmod kvm_amd kvm";
|
||||
};
|
||||
};
|
||||
|
||||
age.secrets.runner-reg.file = ../../secrets/gitlab/myself-vbox-runner-reg.age;
|
||||
|
||||
services.gitlab-runner = {
|
||||
enable = true;
|
||||
settings.concurrent = 5;
|
||||
services.vbox = {
|
||||
executor = "shell";
|
||||
limit = 5;
|
||||
registrationConfigFile = config.age.secrets.runner-reg.path;
|
||||
environmentVariables = {
|
||||
EFI_DIR = "${pkgs.OVMF.fd}/FV/";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user