Version Management
Adaptadocx coordinates releases across languages using semantic versioning, Antora component metadata, and Git-tagged CI workflows.
Semantic versioning
Version string: MAJOR.MINOR.PATCH
Segment | Meaning |
---|---|
MAJOR |
Breaking changes |
MINOR |
Backward-compatible features |
PATCH |
Bug fixes / docs only |
1.0.0 → initial release 1.1.0 → new features 1.1.1 → fixes / docs 2.0.0 → breaking refactor
Git guidelines
git tag -a v1.2.0 -m "Release 1.2.0"
git push origin --tags
Branch | Purpose | Pattern |
---|---|---|
main |
Stable code |
|
Feature |
New work |
|
Release |
Preparation branch (rare) |
|
Hot-fix |
Urgent patch |
|
Antora component versions
Each language keeps its own docs/en/antora.yml
and docs/ru/antora.yml
.
For tag builds Antora resolves the version from Git tags; for branch builds the content is published under a current
(or branch-named) pseudo-version. No placeholders are required in the repo.
name: adaptadocx
version: 'current' # tag builds override this automatically
title: Adaptadocx Documentation
name: adaptadocx
version: 'current' # tag builds override this automatically
title: Документация Adaptadocx
Version resolution logic
The build uses a fallback so both tagged releases and branch builds resolve correctly.
build/asm/ ├── <locale>/ │ ├── 1.2.0/ ← Git-tagged release v1.2.0 │ └── current/ ← Untagged builds from the branch
-
Look for
…/<version>/
. -
If not found, use
…/current/
.
CI and build scope
-
Local/PR builds — default
BUILD_SCOPE=local
, only the current branch (BUILD_REF=HEAD
). -
Release builds —
BUILD_SCOPE=tags
, all Git tags are built by Antora.
Example (release workflow):
- 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'
Artefact layout
Versioning is encoded in directories, filenames stay stable.
Format | Output path |
---|---|
PDF (EN) |
|
PDF (RU) |
|
DOCX (EN) |
|
DOCX (RU) |
|
Header menu links in the UI point at _downloads/
of the current version, for example:
-
'_downloads/adaptadocx-en.pdf'
-
'_downloads/adaptadocx-en.docx'
-
'_downloads/adaptadocx-ru.pdf'
-
'_downloads/adaptadocx-ru.docx'
Translation release checklist
-
Bump the app version in
package.json
if applicable. -
Verify playbooks if
branches
orstart_path
changed. -
Build both locales and verify search indexing.
-
Tag and push (
vX.Y.Z
). -
Confirm CI artefacts exist for EN and RU under
site/<locale>/<version>/_downloads/
andbuild/(pdf|docx)/<locale>/<version>/
.