DocSpace-buildtools/build/install/common/modify-json-config.py
Sergey Kirichenko 3dcd1048b9 Build
2022-05-24 12:16:47 +03:00

46 lines
1.1 KiB
Python

from jsonpath_ng import jsonpath, parse
import json
import sys
filePath = None
saveFilePath = None
jsonValue = None
def openJsonFile(filePath):
try:
with open(filePath, 'r') as f:
return json.load(f)
except FileNotFoundError as e:
return False
except IOError as e:
return False
def parseJsonValue(jsonValue):
data = jsonValue.split("=")
data[0] = "$." + data[0].strip()
data[1] = data[1].replace(" ", "")
return data
def updateJsonFile(jsonData, jsonUpdateValue):
jsonpath_expr = parse(jsonUpdateValue[0])
jsonpath_expr.find(jsonData)
jsonpath_expr.update(jsonData, jsonUpdateValue[1])
return jsonData
def writeJsonFile(jsonFile, jsonData, indent=4):
with open(jsonFile, 'w') as f:
f.write(json.dumps(jsonData, ensure_ascii=False, indent=indent))
return 1
filePath = sys.argv[1]
saveFilePath = filePath
jsonValue = sys.argv[2]
jsonData = openJsonFile(filePath)
jsonUpdateValue = parseJsonValue(jsonValue)
updateJsonFile(jsonData, jsonUpdateValue)
writeJsonFile(filePath, jsonData)