fix: manifest SHA256 from git blobs (CRLF/LF) — release 2.2.2-SAC
Manifest was hashed from Windows working tree while Linux checkout uses git blobs; verify failed with sha256 mismatch. build-release-manifest.sh now hashes :index/HEAD; .gitattributes enforces LF for agent scripts.
This commit is contained in:
@@ -91,13 +91,13 @@ Updater читает **`GIT_REF`**, **`GIT_VERIFY_MODE`**, **`GIT_ALLOW_RESET`**
|
||||
- Файл не найден → WARN, update продолжается (или exit 1 при **`RELEASE_MANIFEST_STRICT=1`**).
|
||||
- Копирование **`update_ssh_monitor.sh`** в `/opt/scripts/` и re-exec — только если manifest для версии был и прошёл verify.
|
||||
|
||||
Генерация при релизе (после **финального** коммита кода, чтобы `git_commit` в manifest совпал с HEAD):
|
||||
Генерация при релизе (хеши **из git**, как на Linux после `checkout` — не с диска Windows):
|
||||
|
||||
```bash
|
||||
git commit -m "release: 2.2.0-SAC"
|
||||
./scripts/build-release-manifest.sh 2.2.0-SAC
|
||||
git add release/manifest-2.2.0-SAC.json && git commit -m "release: manifest 2.2.0-SAC"
|
||||
git tag 2.2.0-SAC
|
||||
git add --renormalize ssh-monitor *.sh # при смене .gitattributes
|
||||
./scripts/build-release-manifest.sh 2.2.2-SAC
|
||||
git add release/manifest-2.2.2-SAC.json && git commit -m "release: manifest 2.2.2-SAC"
|
||||
git tag 2.2.2-SAC
|
||||
```
|
||||
|
||||
### Примеры для прода
|
||||
|
||||
Reference in New Issue
Block a user