이미지 206개 한국어 설명과 예제 대시보드 및 화면 문구 보완

This commit is contained in:
Codex
2026-09-13 17:34:15 +09:00
parent 087e80126d
commit 3c7549c104
112 changed files with 29557 additions and 47 deletions
@@ -0,0 +1,30 @@
import pathlib,subprocess,datetime,shutil,time,urllib.request,urllib.parse,hashlib,json
base=pathlib.Path('/www/dk_project/dk_app/trilium');release=pathlib.Path('/tmp/trilium-korean-phase8')
manifest=json.loads((release/'manifest.json').read_text());digest=lambda p:hashlib.sha256(p.read_bytes()).hexdigest()
def target(rel):return base/('patched/main.cjs' if rel=='main.cjs' else 'i18n_ko/'+rel)
for rel,expected in manifest['files'].items():
assert digest(release/rel)==expected,rel
assert digest(target(rel))==manifest['previous'][rel],rel
backup=base/'backups'/('before-korean-phase8-'+datetime.datetime.now().strftime('%Y%m%d-%H%M%S'));backup.mkdir(parents=True,mode=0o700)
for rel in manifest['files']:
dest=backup/rel;dest.parent.mkdir(parents=True,exist_ok=True);shutil.copy2(target(rel),dest)
try:
for rel in manifest['files']:target(rel).write_bytes((release/rel).read_bytes())
subprocess.run(['docker','restart','trilium'],check=True)
for attempt in range(40):
try:
with urllib.request.urlopen('http://127.0.0.1:18082/api/health-check',timeout=2) as response:assert response.status==200
break
except Exception:
if attempt==39:raise
time.sleep(1)
checked=0
for rel,expected in manifest['files'].items():
if rel=='main.cjs':continue
with urllib.request.urlopen('http://127.0.0.1:18082/assets/v0.95.0-ko-20260913-r7/'+urllib.parse.quote(rel),timeout=5) as response:assert hashlib.sha256(response.read()).hexdigest()==expected,rel
checked+=1
result={'status':'verified','backup':str(backup),'servedFiles':checked,'assetVersion':'v0.95.0-ko-20260913-r7'}
(base/'i18n_ko/phase8-result.json').write_text(json.dumps(result,indent=2));print(json.dumps(result))
except Exception:
for rel in manifest['files']:target(rel).write_bytes((backup/rel).read_bytes())
subprocess.run(['docker','restart','trilium'],check=True);raise