esphome/esphome/config_helpers.py
Otto Winter bb2582717f
Make file generation saving atomic (#792)
* Make file generation saving atomic

* Lint

* Python 2 Compat

* Fix

* Handle file not found error
2019-10-24 21:53:42 +02:00

23 lines
606 B
Python

from __future__ import print_function
import json
import os
from esphome.core import CORE
from esphome.helpers import read_file
from esphome.py_compat import safe_input
def read_config_file(path):
# type: (basestring) -> unicode
if CORE.vscode and (not CORE.ace or
os.path.abspath(path) == os.path.abspath(CORE.config_path)):
print(json.dumps({
'type': 'read_file',
'path': path,
}))
data = json.loads(safe_input())
assert data['type'] == 'file_response'
return data['content']
return read_file(path)