diff --git a/.gitignore b/.gitignore index 5ed8250d601e513bbaf9fcac5a0df816792c9d69..8f592aed3fa2ee4809a749866d976ed04f09c56e 100644 --- a/.gitignore +++ b/.gitignore @@ -10,6 +10,7 @@ docs/build docs/source/_static/openapi.json docs/vale/styles/* !docs/vale/styles/Vocab/ +venv/ # Ignore files generated by apidoc docs/source/lso.rst diff --git a/lso/playbook.py b/lso/playbook.py index 2827abe188abe39930a79226b67149a723f7fe41..3e933d66f9b2530ee4d1deed42ca05ad437e0fd8 100644 --- a/lso/playbook.py +++ b/lso/playbook.py @@ -1,6 +1,6 @@ """Module that gathers common API responses and data models.""" -import json import enum +import json import logging import threading import uuid @@ -71,7 +71,7 @@ def _run_playbook_proc(job_id: str, playbook_path: str, extra_vars: dict, invent playbook=playbook_path, inventory=inventory, extravars=extra_vars, - json_mode=True + json_mode=True, ) # Process playbook JSON stdout @@ -83,8 +83,8 @@ def _run_playbook_proc(job_id: str, playbook_path: str, extra_vars: dict, invent try: task_output = json.loads(line) parsed_output.append(task_output) - except json.JSONDecodeError as e: - pass # Skip empty line + except json.JSONDecodeError: + parsed_output.append({"invalid_json": line}) payload = [ { @@ -92,9 +92,9 @@ def _run_playbook_proc(job_id: str, playbook_path: str, extra_vars: dict, invent "status": ansible_playbook_run.status, "job_id": job_id, "output": json.dumps(parsed_output, indent=4), - "return_code": int(ansible_playbook_run.rc) + "return_code": int(ansible_playbook_run.rc), }, - "confirm": "ACCEPTED" + "confirm": "ACCEPTED", } ] diff --git a/test/routes/__init__.py b/test/routes/__init__.py index 921a61f4715ac2c6cc9db918dd0d46b46450e529..b9b2d1be9ffc139ab201226b98fdd6891d635868 100644 --- a/test/routes/__init__.py +++ b/test/routes/__init__.py @@ -1,4 +1,4 @@ -from typing import TextIO +from io import StringIO TEST_CALLBACK_URL = "https://fqdn.abc.xyz/api/resume" @@ -8,6 +8,6 @@ def test_ansible_runner_run(**kwargs): def __init__(self): self.status = "success" self.rc = 0 - self.stdout = TextIO() + self.stdout = StringIO("some initial text data") return Runner()