Files
infra/users/ai-worker.nix

26 lines
891 B
Nix
Raw Normal View History

{ pkgs, inputs, config, keys, ... }: {
2026-04-04 04:57:47 -04:00
users.users.ai-worker = {
isSystemUser = true;
2026-04-04 04:57:47 -04:00
group = "ai-worker";
home = "/home/ai-worker";
createHome = true;
extraGroups = [ "docker" ];
shell = pkgs.bashInteractive;
openssh.authorizedKeys.keys = [
2026-04-04 04:57:47 -04:00
keys.users.ai-worker.main
];
# No password login - SSH key only
hashedPassword = "!";
};
2026-04-04 04:57:47 -04:00
users.groups.ai-worker = {};
# Enable restricted AI worker SSH access for ollama benchmarking
# SECURITY: ai-worker can only:
# - SSH into host from Hermes container
# - Run docker commands (docker exec ollama ...) via docker group
# - NO access to infra repo (no bind mount)
# - NO sudo access (no nh, nixos-rebuild, nixpkgs-fmt, nix)
# WORKFLOW: SSH from Hermes container, run docker benchmarks, return and save results to /opt/data/ai-optimizer/
services.aiWorkerAccess = true;
}