Adding a cmd_history.txt log under /var/log/archinstall/ (#737)

* Adding a cmd_history.txt log under /var/log/archinstall/ to get a clear picture of which commands was executed.
This commit is contained in:
Anton Hvornum 2021-11-18 21:18:41 +00:00 committed by GitHub
parent 4e3d2cff0c
commit 5ec690da93
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 16 additions and 2 deletions

View File

@ -182,9 +182,16 @@ def get_filesystem_type(path):
def disk_layouts():
try:
return json.loads(SysCommand("lsblk -f -o+TYPE,SIZE -J").decode('UTF-8'))
if (handle := SysCommand("lsblk -f -o+TYPE,SIZE -J")).exit_code == 0:
return json.loads(handle.decode('UTF-8'))
else:
log(f"Could not return disk layouts: {handle}", level=logging.WARNING, fg="yellow")
return None
except SysCallError as err:
log(f"Could not return disk layouts: {err}")
log(f"Could not return disk layouts: {err}", level=logging.WARNING, fg="yellow")
return None
except json.decoder.JSONDecodeError as err:
log(f"Could not return disk layouts: {err}", level=logging.WARNING, fg="yellow")
return None

View File

@ -308,9 +308,16 @@ class SysCommandWorker:
if not self.pid:
try:
try:
with open(f"{storage['LOG_PATH']}/cmd_history.txt", "a") as cmd_log:
cmd_log.write(f"{' '.join(self.cmd)}\n")
except PermissionError:
pass
os.execve(self.cmd[0], self.cmd, {**os.environ, **self.environment_vars})
if storage['arguments'].get('debug'):
log(f"Executing: {self.cmd}", level=logging.DEBUG)
except FileNotFoundError:
log(f"{self.cmd[0]} does not exist.", level=logging.ERROR, fg="red")
self.exit_code = 1