남은 API 참고 화면 5개 한글화와 Swagger 문서 표시 복구
This commit is contained in:
@@ -0,0 +1,16 @@
|
||||
import pathlib,hashlib,shutil,subprocess,time,urllib.request,json,datetime
|
||||
base=pathlib.Path('/www/dk_project/dk_app/trilium');src=pathlib.Path('/tmp/trilium-korean-phase9-fix');h=lambda p:hashlib.sha256(p.read_bytes()).hexdigest()
|
||||
assert h(base/'patched/main.cjs')==h(src/'before.cjs')
|
||||
backup=base/'backups'/('before-api-swagger-fix-'+datetime.datetime.now().strftime('%Y%m%d-%H%M%S'));backup.mkdir(mode=0o700);shutil.copy2(base/'patched/main.cjs',backup/'main.cjs')
|
||||
shutil.copytree(src/'swagger',base/'i18n_ko/doc_notes/en/api-ko/swagger',dirs_exist_ok=False)
|
||||
(base/'i18n_ko/doc_notes/en/api-ko/swagger').chmod(0o755)
|
||||
for p in (base/'i18n_ko/doc_notes/en/api-ko/swagger').iterdir():p.chmod(0o644)
|
||||
(base/'patched/main.cjs').write_bytes((src/'main.cjs').read_bytes());subprocess.run(['docker','restart','trilium'],check=True)
|
||||
for i in range(40):
|
||||
try:
|
||||
with urllib.request.urlopen('http://127.0.0.1:18082/etapi/docs/swagger-ui-bundle.js',timeout=3) as r:assert hashlib.sha256(r.read()).hexdigest()==h(src/'swagger/swagger-ui-bundle.js')
|
||||
break
|
||||
except Exception:
|
||||
if i==39:raise
|
||||
time.sleep(1)
|
||||
result={'status':'verified','backup':str(backup),'swaggerVersion':'5.21.0','mainSha256':h(base/'patched/main.cjs')};(base/'i18n_ko/phase9-swagger-result.json').write_text(json.dumps(result));print(json.dumps(result))
|
||||
Reference in New Issue
Block a user