Управление версиями
Adaptadocx координирует публикации документации на разных языках с помощью семантического версионирования, метаданных компонентов Antora и CI-workflow, основанных на Git-тегах.
Семантическое версионирование
Строка версии: MAJOR.MINOR.PATCH
Сегмент | Пояснение |
---|---|
MAJOR |
Несовместимые изменения |
MINOR |
Новые функции без ломки |
PATCH |
Исправления ошибок / только docs |
1.0.0 → первый релиз 1.1.0 → новые возможности 1.1.1 → фиксы / docs 2.0.0 → несовместимое изменение
Правила Git
git tag -a v1.2.0 -m "Release 1.2.0"
git push origin --tags
Ветка | Назначение | Шаблон |
---|---|---|
main |
Стабильный код |
|
Feature |
Новая функциональность |
|
Release |
Подготовка релиза (редко) |
|
Hot-fix |
Срочный патч |
|
Версии компонентов Antora
У каждой локали свой antora.yml
. Для сборок по тегам Antora
подставляет версию из Git-тега. Для сборок по веткам контент публикуется
под псевдоверсией current
(или именем ветки). Плейсхолдеры в репозитории
не требуются.
name: adaptadocx
version: 'current' # сборка по тегам переопределит автоматически
title: Adaptadocx Documentation
name: adaptadocx
version: 'current' # сборка по тегам переопределит автоматически
title: Документация Adaptadocx
Логика определения версии
Используется fallback-стратегия, чтобы и релизы по тегам, и сборки по веткам разрешались корректно.
build/asm/ ├── <locale>/ │ ├── 1.2.0/ ← релиз по тегу v1.2.0 │ └── current/ ← сборка по ветке без тега
-
Ищем
…/<version>/
. -
Если нет, используем
…/current/
.
CI и объём сборки
-
Локальные / PR-сборки — по умолчанию
BUILD_SCOPE=local
, собирается только текущая ветка (BUILD_REF=HEAD
). -
Релизные сборки —
BUILD_SCOPE=tags
, Antora строит все версии по Git-тегам.
- name: Build docs in container
run: |
docker run --rm -v "${{ github.workspace }}:/work" adaptadocx:latest \
bash -lc 'npm ci --no-audit --prefer-offline && make clean && make build-all BUILD_SCOPE=tags'
Размещение артефактов
Версионирование кодируется каталогами, имена файлов стабильные.
Формат | Путь вывода |
---|---|
PDF (EN) |
|
PDF (RU) |
|
DOCX (EN) |
|
DOCX (RU) |
|
Ссылки в шапке UI указывают на _downloads
текущей версии, например:
-
'_downloads/adaptadocx-en.pdf'
-
'_downloads/adaptadocx-en.docx'
-
'_downloads/adaptadocx-ru.pdf'
-
'_downloads/adaptadocx-ru.docx'
Чек-лист релиза
-
Обновите
version
вpackage.json
при необходимости. -
При изменении ветки или
start_path
— проверьте playbook’и. -
Соберите обе локали, проверьте индекс поиска.
-
Поставьте тег и запушьте (
vX.Y.Z
). -
Убедитесь, что артефакты EN и RU лежат в
site/<locale>/<version>/_downloads/
иbuild/(pdf|docx)/<locale>/<version>/
.