|
|
|
@ -38,6 +38,7 @@ local SINCE = getenv("SINCE", "0s") |
|
|
|
local OLLAMA_HOST = getenv("OLLAMA_HOST", "192.168.222.12") |
|
|
|
local OLLAMA_PORT = tonumber(getenv("OLLAMA_PORT", "11434")) |
|
|
|
local SSH_PORT = tonumber(getenv("SSH_PORT", "22")) |
|
|
|
local SSH_USER = getenv("SSH_USER", "user") |
|
|
|
local SSH_IDENTITY_FILE = getenv("SSH_IDENTITY_FILE", "/root/.ssh/id_rsa") -- e.g. "/path/to/id_rsa" |
|
|
|
local ERROR_PATTERN = getenv( |
|
|
|
"ERROR_PATTERN", |
|
|
|
@ -174,9 +175,9 @@ local function main() |
|
|
|
if port_is_up(OLLAMA_HOST, SSH_PORT, 60) then |
|
|
|
log("SSH is reachable. Starting ollama service...") |
|
|
|
socket.sleep(5) |
|
|
|
ssh("nssm start ollama", "micro", OLLAMA_HOST, SSH_PORT, SSH_IDENTITY_FILE) |
|
|
|
--ssh('wsl.exe -d Debian -- sudo systemctl enable ollama', "micro", OLLAMA_HOST, SSH_PORT, SSH_IDENTITY_FILE) |
|
|
|
--ssh('wsl.exe -d Debian -- sudo systemctl start ollama', "micro", OLLAMA_HOST, SSH_PORT, SSH_IDENTITY_FILE) |
|
|
|
ssh("nssm start ollama", SSH_USER, OLLAMA_HOST, SSH_PORT, SSH_IDENTITY_FILE) |
|
|
|
--ssh('wsl.exe -d Debian -- sudo systemctl enable ollama', SSH_USER, OLLAMA_HOST, SSH_PORT, SSH_IDENTITY_FILE) |
|
|
|
--ssh('wsl.exe -d Debian -- sudo systemctl start ollama', SSH_USER, OLLAMA_HOST, SSH_PORT, SSH_IDENTITY_FILE) |
|
|
|
if (port_is_up(OLLAMA_HOST, OLLAMA_PORT, 90)) then |
|
|
|
log("Ollama service is reachable again.") |
|
|
|
socket.sleep(30) |
|
|
|
@ -190,10 +191,10 @@ local function main() |
|
|
|
if line:find(FINISH_PATTERN, 1, true) ~= nil and powered_on == true then |
|
|
|
log(("Detected finish pattern: %q"):format(FINISH_PATTERN)) |
|
|
|
log("Shutting down Ollama host to save power...") |
|
|
|
ssh("nssm stop ollama", "micro", OLLAMA_HOST, SSH_PORT, SSH_IDENTITY_FILE) |
|
|
|
--ssh('wsl.exe -d Debian -- sudo systemctl disable ollama', "micro", OLLAMA_HOST, SSH_PORT, SSH_IDENTITY_FILE) |
|
|
|
--ssh('wsl.exe -d Debian -- sudo systemctl stop ollama', "micro", OLLAMA_HOST, SSH_PORT, SSH_IDENTITY_FILE) |
|
|
|
ssh("shutdown.exe /s /t 0", "micro", OLLAMA_HOST, SSH_PORT, SSH_IDENTITY_FILE) |
|
|
|
ssh("nssm stop ollama", SSH_USER, OLLAMA_HOST, SSH_PORT, SSH_IDENTITY_FILE) |
|
|
|
--ssh('wsl.exe -d Debian -- sudo systemctl disable ollama', SSH_USER, OLLAMA_HOST, SSH_PORT, SSH_IDENTITY_FILE) |
|
|
|
--ssh('wsl.exe -d Debian -- sudo systemctl stop ollama', SSH_USER, OLLAMA_HOST, SSH_PORT, SSH_IDENTITY_FILE) |
|
|
|
ssh("shutdown.exe /s /t 0", SSH_USER, OLLAMA_HOST, SSH_PORT, SSH_IDENTITY_FILE) |
|
|
|
socket.sleep(5) |
|
|
|
powered_on = false |
|
|
|
break |
|
|
|
|