test: forgejo microVM

This commit is contained in:
Nick 2025-11-09 02:42:22 -06:00
parent aedf6e4be4
commit 6d83b2b2f5
11 changed files with 270 additions and 294 deletions

View file

@ -42,31 +42,35 @@ in
serviceCfg.ports.port2
];
systemd.network = {
enable = true;
networks."20-lan" = {
matchConfig.Name = "enp0s5";
addresses = [ { Address = "${serviceCfg.interface.ip}/24"; } ];
routes = [
{
Destination = "0.0.0.0/0";
Gateway = serviceCfg.interface.gate;
}
];
dns = [
"1.1.1.1"
"8.8.8.8"
];
systemd = {
network = {
enable = true;
networks."20-lan" = {
matchConfig.Name = "enp0s5";
addresses = [ { Address = "${serviceCfg.interface.ip}/24"; } ];
routes = [
{
Destination = "${hostCfg.localhost.address1}/0";
Gateway = serviceCfg.interface.gate;
}
];
dns = [
"1.1.1.1"
"8.8.8.8"
];
};
};
};
services.systemd-networkd.wantedBy = [ "multi-user.target" ];
tmpfiles.rules = [
"d ${serviceCfg.varPaths.path0}/media 0755 ${serviceCfg.name} ${serviceCfg.name} -"
];
systemd.services.systemd-networkd.wantedBy = [ "multi-user.target" ];
};
microvm = {
vcpu = 4;
mem = 4096;
hypervisor = "qemu";
interfaces = [
{
type = "tap";
@ -79,7 +83,6 @@ in
mac = serviceCfg.interface.macUser;
}
];
forwardPorts = [
{
from = "host";
@ -87,7 +90,6 @@ in
guest.port = 22;
}
];
shares = [
{
mountPoint = "/nix/.ro-store";
@ -110,13 +112,11 @@ in
];
};
# Increase tmpfs size for /tmp to satisfy Jellyfin's 2GB requirement
# By default, tmpfs is limited to 50% of RAM, but we need more space
fileSystems."/tmp" = {
device = "tmpfs";
fsType = "tmpfs";
options = [
"size=3G"
"size=4G"
"mode=1777"
];
};