docs: add contributor guide and compatibility matrix

This commit is contained in:
2026-05-31 13:44:39 +03:00
parent 10813528d5
commit fa9dd662b8
3 changed files with 80 additions and 0 deletions

44
CONTRIBUTING.md Normal file
View File

@@ -0,0 +1,44 @@
# Contributing to AstraDeploy
Спасибо за интерес к проекту! Любой вклад welcome: фиксы багов, улучшения UX, новые ядра, новые локали.
## Как разрабатывать
1. Склонируйте/проверьте локальный репозиторий.
2. Работайте в отдельной ветке (рекомендуется).
3. Изменения делайте минимальными и атомарными по смыслу.
4. Смотрите локаль: тексты и подсказки лучше держать в `locales/*.sh`, а не разбрасывать по скриптам.
## Полезные принципы
- `install.sh` хранит общий lifecycle; ядра — в `cores/*.sh`.
- Не меняйте поведение без флага по умолчанию, если это может сломать автоматический режим.
- Для новых параметров:
- добавьте парсинг в `install.sh`;
- добавьте локализацию в `locales/en.sh` и `locales/ru.sh`;
- проверьте сценарии `--yes`, `--easy`, `--dry-run`, `--force-clean`, `--accept-license`.
- При добавлении новых ядер:
- создайте новый файл в `cores/`;
- добавьте запись в `manifests/cores.json`;
- обновите `install.sh --help` список ядер.
## Стиль и формат
- Bash: избегайте сложных однострочников, лучше явные переменные и функции.
- Локали и тексты: используйте существующие ключи/шаблоны в `locales`.
- Логи: новые важные шаги добавляйте через `info/warn/error` из `lib/logger.sh`.
## Отладка и проверки
- Для быстрого прогона используйте `--dry-run`.
- При проблемах с внешним окружением:
- `--debug` покажет расширенные шаги;
- просматривайте лог в `/var/log/astra-deploy/`.
- Проверки не должны ломать установку на старте — лучше мягко предупреждать и продолжать fallback-логикой.
## Pull Request
1. Коротко опишите, что меняется и почему.
2. Приложите сценарий проверки (команды/флаги), который вы прогоняли.
3. Укажите совместимые ОС/ядра и известные ограничения.