forge runner
This commit is contained in:
parent
a2de246571
commit
0fbf1d0cb5
4 changed files with 67 additions and 1 deletions
7
Taskfile
7
Taskfile
|
|
@ -15,7 +15,7 @@ dump() {
|
||||||
if [ -e "vm-$1.nix" ]; then
|
if [ -e "vm-$1.nix" ]; then
|
||||||
sudo cp -f result/vzdump* /mnt/share/proxmox/dump/
|
sudo cp -f result/vzdump* /mnt/share/proxmox/dump/
|
||||||
elif [ -e "lxc-$1.nix" ]; then
|
elif [ -e "lxc-$1.nix" ]; then
|
||||||
sudo cp -f result/tarball/nixos-system-x86_64-linux.tar.xz "/mnt/share/proxmox/dump/$1.tar.xz"
|
sudo cp -f result/tarball/nixos-image-lxc-*.tar.xz "/mnt/share/proxmox/template/cache/$1.tar.xz"
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -38,6 +38,11 @@ deploy() {
|
||||||
'nixos-rebuild switch --flake .#'"$1"' --target-host admin@"'"$ip"'" --use-remote-sudo'
|
'nixos-rebuild switch --flake .#'"$1"' --target-host admin@"'"$ip"'" --use-remote-sudo'
|
||||||
}
|
}
|
||||||
|
|
||||||
|
jump-deploy() {
|
||||||
|
jump_ip=$(tailscale ip xalicas | head -n1)
|
||||||
|
env NIX_SSHOPTS="-J robert@$jump_ip" ./Taskfile deploy "$1"
|
||||||
|
}
|
||||||
|
|
||||||
ssh() {
|
ssh() {
|
||||||
command "${2:-mosh}" admin@"$(get-ip "$1")"
|
command "${2:-mosh}" admin@"$(get-ip "$1")"
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -30,12 +30,14 @@ outputs = { self, nixpkgs, ... }@inputs:
|
||||||
majcraft = nixos-vma ./vm-majcraft.nix;
|
majcraft = nixos-vma ./vm-majcraft.nix;
|
||||||
homelab = nixos-vma ./vm-homelab.nix;
|
homelab = nixos-vma ./vm-homelab.nix;
|
||||||
metrics = nixos-lxc ./lxc-metrics.nix;
|
metrics = nixos-lxc ./lxc-metrics.nix;
|
||||||
|
forge-runner = nixos-lxc ./lxc-forge-runner.nix;
|
||||||
};
|
};
|
||||||
|
|
||||||
packages.${system} = {
|
packages.${system} = {
|
||||||
majcraft = image "majcraft";
|
majcraft = image "majcraft";
|
||||||
homelab = image "homelab";
|
homelab = image "homelab";
|
||||||
metrics = lxc "metrics";
|
metrics = lxc "metrics";
|
||||||
|
forge-runner = lxc "forge-runner";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
||||||
58
lxc-forge-runner.nix
Normal file
58
lxc-forge-runner.nix
Normal file
|
|
@ -0,0 +1,58 @@
|
||||||
|
{
|
||||||
|
pkgs,
|
||||||
|
lib,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
|
||||||
|
{
|
||||||
|
imports = [
|
||||||
|
./lxc-base.nix
|
||||||
|
];
|
||||||
|
|
||||||
|
config = {
|
||||||
|
my.vm = {
|
||||||
|
name = "runner01";
|
||||||
|
ip4 = "192.168.0.7";
|
||||||
|
};
|
||||||
|
|
||||||
|
environment.systemPackages = with pkgs; [
|
||||||
|
grafana-to-ntfy
|
||||||
|
];
|
||||||
|
|
||||||
|
networking.extraHosts = ''
|
||||||
|
192.168.0.2 xalicas
|
||||||
|
192.168.0.3 proxmox
|
||||||
|
192.168.0.4 craft01
|
||||||
|
192.168.0.5 lab01
|
||||||
|
192.168.0.6 metrics01
|
||||||
|
192.168.0.7 runner01
|
||||||
|
192.168.0.100 unifi
|
||||||
|
'';
|
||||||
|
|
||||||
|
networking.firewall.trustedInterfaces = [ "br-+" ];
|
||||||
|
|
||||||
|
virtualisation.docker = {
|
||||||
|
enable = true;
|
||||||
|
daemon.settings = {
|
||||||
|
fixed-cidr-v6 = "fd00::/80";
|
||||||
|
ipv6 = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
services.gitea-actions-runner = {
|
||||||
|
package = pkgs.forgejo-runner;
|
||||||
|
instances.runner01 = {
|
||||||
|
enable = true;
|
||||||
|
name = "runner01";
|
||||||
|
token = "E17wr2p2EH4krR5NIUokwsBhhdLCWNW5ahpEyjHY";
|
||||||
|
url = "https://forge.rperce.net/";
|
||||||
|
labels = [
|
||||||
|
"node-22:docker://node:22-bookworm"
|
||||||
|
"nixos-latest:docker://nixos/nix"
|
||||||
|
"playwright-latest:docker://mcr.microsoft.com/playwright:v1.57.0-jammy"
|
||||||
|
];
|
||||||
|
# settings = { ... };
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
@ -25,6 +25,7 @@
|
||||||
192.168.0.4 craft01
|
192.168.0.4 craft01
|
||||||
192.168.0.5 lab01
|
192.168.0.5 lab01
|
||||||
192.168.0.6 metrics01
|
192.168.0.6 metrics01
|
||||||
|
192.168.0.7 runner01
|
||||||
192.168.0.100 unifi
|
192.168.0.100 unifi
|
||||||
'';
|
'';
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue