Athene odoo-reload foreground.

This commit is contained in:
Jared Kipe
2021-12-10 10:54:14 -08:00
parent 76dbca5474
commit a9b50df0c5
2 changed files with 40 additions and 0 deletions

View File

@@ -27,6 +27,22 @@
"-u", "sale",
"--test-enable", "--no-xmlrpc", "--stop-after-init"],
"console": "integratedTerminal"
},
{
"name": "Odoo: server",
"type": "python",
"request": "launch",
"program": "/opt/odoo/hibou-suite/odoo-run.py",
"args": [],
"console": "integratedTerminal"
},
{
"name": "Odoo: reload foreground server",
"type": "python",
"request": "launch",
"program": "/opt/odoo/hibou-suite/odoo-reload.py",
"args": [],
"console": "integratedTerminal"
}
]
}

24
odoo-reload.py Executable file
View File

@@ -0,0 +1,24 @@
import psutil
import os
import signal
PID = 1
PNAME = 'odoo'
is_foreground = False
for proc in psutil.process_iter():
try:
process_name = proc.name()
process_id = proc.pid
if process_id == PID:
is_foreground = process_name == PNAME
break
except (psutil.NoSuchProcess, psutil.AccessDenied, psutil.ZombieProcess):
pass
if not is_foreground:
print('Odoo is not the foreground process.')
exit(-1)
print('Signalling reload to Odoo')
os.kill(PID, signal.SIGHUP)