Files
2026-10-04 00:30:09 +07:00

43 lines
3.6 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Выпуск релиза — Phase 9
```bash
./mcpack release 0.0.6
# Дополнительная конфигурация:
./mcpack release 0.0.6 --config platform/config.yaml
```
Команда требует чистый Git worktree, включая untracked files, активную ветку,
полный локальный clone и настроенные Git author/committer. Подготовьте исходники
обычным Git-коммитом заранее. Команда не коммитит остальные изменения проекта.
Версия — `MAJOR.MINOR.PATCH`, допускается prerelease (`0.1.0-rc.1`). Build metadata
с `+` пока не поддерживается форматом имён deployment. Версия должна отличаться
от текущей и не быть занята каталогом релиза или локальным tag `vVERSION`.
Удалённые tags автоматически не загружаются: синхронизация refs остаётся задачей оператора.
Workflow:
1. Проверяет Git, конфигурацию, версию и наличие release/tag; берёт локальный lock.
2. Меняет только top-level `version` в `pack.toml`, сохраняя остальной текст.
3. Собирает пробный артефакт в отдельном временном output с pinned packwiz/Compose.
4. При успехе коммитит только `pack.toml` с сообщением `Release VERSION`.
5. Собирает финальный полный release из чистого коммита, проверяет checksums и provenance.
6. Создаёт annotated tag `vVERSION` на тот же commit и выводит каталог/commit/tag.
Пробный output удаляется. Ошибка до коммита восстанавливает точный исходный
`pack.toml`; параллельные изменения сохраняются для разбора. Если финальная сборка
или создание tag завершается ошибкой, version commit остаётся, tag не создаётся
этой операцией. Финальный артефакт, если уже создан, остаётся для проверки.
Автоматического Git reset коммита, перезаписи существующего release/tag, push,
публикации или deployment нет.
После прерывания изучите HEAD, status, refs, `dist/` и `.tools/release.lock`.
Убедитесь, что процесс закончился, прежде чем убрать stale lock. После ошибки
финальной сборки исправьте причину и осознанно завершите выпуск из чистого коммита:
`./mcpack build --release`, затем проверьте manifest/SHA256SUMS и создайте annotated
`vVERSION` на manifest commit. Если артефакт уже существует, проверьте его целиком,
не запускайте повторный build поверх него. Tag создавайте только после проверки.
В текущем workspace пока незакоммиченные исходники: `release` корректно откажет.
Phase 9 проверена на отдельном source snapshot, с настоящими packwiz/Compose,
version commit и tag; основной Git, версия pack и рабочий сервер не менялись.