mirror of
https://github.com/LmeSzinc/StarRailCopilot.git
synced 2024-11-30 03:16:08 +00:00
47 lines
1.1 KiB
Python
47 lines
1.1 KiB
Python
import sys
|
|
import typing as t
|
|
|
|
from deploy.Windows.utils import poor_yaml_read, poor_yaml_write, DEPLOY_TEMPLATE
|
|
|
|
"""
|
|
Set config/deploy.yaml with commands like
|
|
|
|
python -m deploy.set GitExecutable=/usr/bin/git PythonExecutable=/usr/bin/python3.8
|
|
"""
|
|
|
|
|
|
def get_args() -> t.Dict[str, str]:
|
|
args = {}
|
|
for arg in sys.argv[1:]:
|
|
if '=' not in arg:
|
|
continue
|
|
k, v = arg.split('=')
|
|
k, v = k.strip(), v.strip()
|
|
args[k] = v
|
|
return args
|
|
|
|
|
|
def config_set(modify: t.Dict[str, str], output='./config/deploy.yaml') -> t.Dict[str, str]:
|
|
"""
|
|
Args:
|
|
modify: A dict of key-value in deploy.yaml
|
|
output:
|
|
|
|
Returns:
|
|
The updated key-value in deploy.yaml
|
|
"""
|
|
data = poor_yaml_read(DEPLOY_TEMPLATE)
|
|
data.update(poor_yaml_read(output))
|
|
for k, v in modify.items():
|
|
if k in data:
|
|
print(f'Key "{k}" set')
|
|
data[k] = v
|
|
else:
|
|
print(f'Key "{k}" not exist')
|
|
poor_yaml_write(data, file=output)
|
|
return data
|
|
|
|
|
|
if __name__ == '__main__':
|
|
config_set(get_args())
|