release: formalize m2pack-full release tree layout + reproducible builder #11
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Today's
2026.04.15-m2pack-fullrelease was built from an ad-hoc directory/home/mt2.jakubkadlec.dev/work/release-v2/client/on the VPS, assembled by hand:Metin2_RelWithDebInfo.exefrombuild-mingw64-lld/bin/→ rename toMetin2.exepack/,bgm/,mark/,config/from/tmp/m2dev-client-runtime-http/.offsingle,.prev*,.pckwhere a.m2psibling existsassets/,docs/,scripts/,upload/,log/,*.md,config.exeruntime-key.jsonfromm2pack export-runtime-keyNo script, no commit, no reproducibility. If the tmpfs eats
/tmp(which it almost did at 99% today) or someone else needs to cut a release, there is nothing to run.Proposal
A
scripts/build-release-tree.sh <dest>that:<dest>/client/ready formake-manifest.pym2pack export-runtime-keyif--key-diris passed (covers #2 from the runtime-key issue)Target location:
m2dev-client/scripts/build-release-tree.shnext to the other release scripts.Once this exists,
make-release.shcan chain:build-release-tree → make-manifest → sign-manifest → blob tree build → atomic publish. That was the original design indocs/update-manager.md; we just haven't lifted the tree assembly into it yet.