Add handle runner
This commit is contained in:
parent
5f8eee57bc
commit
5cbc5a8c35
1 changed files with 20 additions and 0 deletions
20
lantern/handle.py
Normal file
20
lantern/handle.py
Normal file
|
@ -0,0 +1,20 @@
|
|||
import subprocess
|
||||
import json
|
||||
from collections import namedtuple
|
||||
|
||||
|
||||
Result = namedtuple('Result', ['exit_code', 'html', 'error'])
|
||||
|
||||
|
||||
def execute_handle(executable, request_data):
|
||||
input_data = json.dumps(request_data).encode('utf-8')
|
||||
cmd = subprocess.run(executable, input=input_data, stdout=subprocess.PIPE)
|
||||
return Result(
|
||||
cmd.returncode,
|
||||
cmd.stdout.decode('utf-8'),
|
||||
cmd.stderr.decode('utf-8')
|
||||
)
|
||||
|
||||
|
||||
def get_http_status_code(exit_code):
|
||||
return 200 if exit_code == 0 else 500
|
Reference in a new issue