14 lines
762 B
Python
14 lines
762 B
Python
from pathlib import Path
|
|
import datetime,shutil,sqlite3,subprocess
|
|
root=Path('/home/ps/huobao-model-bridge')
|
|
candidate=root/'bridge-image-pool.candidate.py'
|
|
compile(candidate.read_text(),str(candidate),'exec')
|
|
backup=root/'backups'/('image-pool-'+datetime.datetime.now().strftime('%Y%m%d-%H%M%S'))
|
|
backup.mkdir(parents=True,mode=0o700)
|
|
shutil.copy2(root/'bridge.py',backup/'bridge.py')
|
|
shutil.copy2(root/'config.json',backup/'config.json')
|
|
with sqlite3.connect(root/'state/jobs.sqlite3') as src,sqlite3.connect(backup/'jobs.sqlite3') as dst:src.backup(dst)
|
|
shutil.copy2(candidate,root/'bridge.py')
|
|
subprocess.run(['docker','restart','huobao-model-bridge'],check=True)
|
|
print('Updated only the Huobao bridge; model jobs and credentials preserved. Backup:',backup)
|