feat(firmware-info): архивируй сборки по хешу и дате

Создай в postcompile CCS и Keil папку по commit исходников и UTC-времени precompile. Сохрани точные образы, manifest, SHA-256 и метаданные, сохраняя прежние выходные файлы. Опиши копирование каталогов в SETGUI и проверь разные даты, целостность и Git-метаданные.
This commit is contained in:
2026-10-08 15:31:13 +03:00
parent 8fc2e1b5cf
commit da055c2787
5 changed files with 158 additions and 3 deletions

View File

@@ -12,7 +12,7 @@ import re
import subprocess
import tempfile
from identity import seal, verify
from identity import archive_build, seal, verify
def postbuild(compiler: Path, build_dir: Path, artifact: str,
@@ -50,6 +50,10 @@ def postbuild(compiler: Path, build_dir: Path, artifact: str,
for item in stage.iterdir():
item.replace(output / item.name)
result = output / bin_image.name
archive_build(result, metadata, output, (
output / hex_image.name,
output / (hex_image.name + ".map"),
output / (bin_image.name + ".map")))
print(f"[firmware-build] BIN: {result}")
print(f"[firmware-build] Manifest: {result}.manifest.json")
print(f"[firmware-build] SHA-256: {result}.sha256")