Files
dj/integration-work/deploy_image_pool.py
T

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)