Skip to content

knoff/cd-headunit

Repository files navigation

cd-headunit

Контроллер кофемашины на Raspberry Pi: сеть, MQTT, OTA-гейтвей, локальные сервисы.

📄 Назначение

Проект представляет собой реализацию HeadUnit OS (Native Edition) — встраиваемой операционной системы на базе Linux (без Docker в runtime), обеспечивающей работу бизнес-логики, обновление компонентов и взаимодействие с периферией.


⚙️ Структура проекта

Репозиторий разделен на 4 основных слоя (Layers), каждый из которых имеет свой жизненный цикл:

builder/       — Скрипты сборки образа ОС (PowerShell + Docker)
system/        — Конфигурации уровня ОС (systemd, udev, network)
services/      — Инфраструктурные сервисы и библиотеки (DB, MQTT)
src/           — Прикладной код (Backend, Gateway, API)
external/      — Подключаемые модули (cd-protocol и др.)
docs/          — Подробная документация

Подробное описание архитектуры см. в docs/architecture.md.


🚀 Быстрый старт

1. Подготовка окружения

Убедитесь, что установлены:

  • PowerShell 7+
  • Docker Desktop (или Engine на Linux)
  • Git

2. Сборка

Управление сборкой осуществляется через скрипт build.ps1.

# Сборка изменений (авто-детект)
.\build.ps1

# Полная пересборка образа ОС
.\build.ps1 -Force

Подробнее о сборке: docs/building.md.


🧪 Тестирование

Проект использует трехуровневую систему тестов (BATS):

  1. Unit: Тесты скриптов сборки.
  2. Image: Тесты готового образа (.img).
  3. Runtime: Самодиагностика на устройстве.
# Запуск тестов
.\build.ps1 -Test unit
.\build.ps1 -Test current

Подробнее: docs/testing.md.


📚 Документация


👥 Контакты

  • Coffee Digital

About

No description, website, or topics provided.

Resources

Contributing

Stars

Watchers

Forks

Packages

 
 
 

Contributors