Документація
Генерація та оновлення документації
Підготовка середовища
docker compose build
Генерація прикладів запитів
Детальніше про тести для генерації прикладів запитів можна прочитати тут
Запустіть тести що генерують приклади запитів:
docker compose run --rm api pytest docs/tests
За потреби запустіть окремо певний тест:
docker compose run --rm api pytest docs/tests/test_belowthreshold.py -k test_docs_milestones
Генерація документації
docker compose run --rm api sh -c "cd docs && make html"
Згенерована документація буде у папці build/html
Переклад документації
Warning
Наступні команди потрібно виконувати у папці docs
Для перекладу на українську мову - uk (2-літерний ISO код мови), потрібно виконати наступні кроки:
За потреби очистіть попередні згенеровані каталоги рядків.
docker compose run --rm api sh -c "cd docs && make clean"
Витягніть всі рядки, що підлягають перекладу, з документації.
docker compose run --rm api sh -c "cd docs && make gettext"
Note
Будуть оновлені каталоги рядків .pot у папці build/locale/
Оновіть переклад новими/зміненими рядками.
docker compose run --rm api sh -c "cd docs && make locale-update"
Note
Буде оновлено існуючі файли .po у папці locale/uk/LC_MESSAGES/ новими/зміненими рядками з каталогу згенерованого у попередньому пункті.
Оновіть змінені/відсутні рядки в
.poфайлах в папціlocale/uk/LC_MESSAGESза допомогою вашого улюбленого редактора/poedit/transifex/pootle/тощо, щоб всі переклади були повними/оновленими.Для використання перекладу у генерації документації скомпілюйте переклад.
docker compose run --rm api sh -c "cd docs && make locale-build"
Note
З файлів .po у папці locale/uk/LC_MESSAGES/ будуть скомпільовані .mo файли
Структура документації
TODO
Текст
Текст документації (reStructuredText/sphinx)
TODO
Текст
Тести для генерації прикладів запитів
Тести що знаходяться у папці docs/tests генерують приклади запитів виконуючи реальні запити до API. Згенеровані запити зберігаються у вигляді текстових .http файлів удиректоріях поруч з текстом документації в яких вони використовуються.
Приклад використання .http файлу у .rst файлі документації:
.. http:example:: http/tender-activating.http
:code:
Фіксування дати в тестах для генерації запитів
TODO
Текст
Перевірка згенерованих запитів на CI
TODO
Текст
Публікація документації (readthedocs)
TODO
Текст