Add Home Assistant Add-on v1.0.0
Features: - Multi-arch support (aarch64, amd64, armv7) - WebUI integration with Home Assistant - Ingress support for seamless integration - Automated builds via GitHub Actions - Comprehensive documentation (EN/RU) - Health check monitoring - Configurable through HA UI
This commit is contained in:
@@ -0,0 +1,261 @@
|
||||
# Strix - Home Assistant Add-on
|
||||
|
||||
## 🎯 Что создано
|
||||
|
||||
Полностью готовый Home Assistant Add-on для Strix с автоматической сборкой и публикацией.
|
||||
|
||||
## 📁 Структура
|
||||
|
||||
```
|
||||
homeassistant-addon/
|
||||
├── config.yaml # Конфигурация аддона для HA
|
||||
├── Dockerfile # Multi-arch Docker образ
|
||||
├── build.yaml # Настройки сборки (aarch64/amd64/armv7)
|
||||
├── run.sh # Скрипт запуска с интеграцией HA
|
||||
├── README.md # Документация для пользователей (EN)
|
||||
├── README-RU.md # Документация для пользователей (RU)
|
||||
├── DOCS.md # Подробная документация
|
||||
├── CHANGELOG.md # История версий
|
||||
├── INSTALLATION.md # Инструкция по установке и публикации
|
||||
├── icon.png.todo # Заметка про иконку 128x128
|
||||
└── logo.png.todo # Заметка про логотип 256x256
|
||||
```
|
||||
|
||||
## ✨ Возможности
|
||||
|
||||
- ✅ **Автоматическая сборка** через GitHub Actions
|
||||
- ✅ **Multi-arch поддержка**: aarch64, amd64, armv7
|
||||
- ✅ **Web UI интеграция** в боковую панель Home Assistant
|
||||
- ✅ **Ingress поддержка** для бесшовной интеграции
|
||||
- ✅ **Настройка через UI** Home Assistant
|
||||
- ✅ **Автообновления** через Supervisor
|
||||
- ✅ **Полная документация** на русском и английском
|
||||
|
||||
## 🚀 Быстрый старт
|
||||
|
||||
### 1. Завершить подготовку
|
||||
|
||||
```bash
|
||||
# Добавить иконки (опционально, но рекомендуется)
|
||||
# - icon.png (128x128px)
|
||||
# - logo.png (256x256px)
|
||||
|
||||
# Закоммитить все изменения
|
||||
git add .
|
||||
git commit -m "Add Home Assistant Add-on"
|
||||
git push origin main
|
||||
```
|
||||
|
||||
### 2. Создать релиз
|
||||
|
||||
```bash
|
||||
# Создать тег версии
|
||||
git tag v1.0.0
|
||||
git push origin v1.0.0
|
||||
```
|
||||
|
||||
GitHub Actions автоматически:
|
||||
- Соберет бинарники для всех архитектур
|
||||
- Создаст Docker образы
|
||||
- Опубликует в GitHub Container Registry
|
||||
|
||||
### 3. Установить в Home Assistant
|
||||
|
||||
1. **Supervisor** → **Add-on Store** → **⋮** → **Repositories**
|
||||
2. Добавить: `https://github.com/eduard256/Strix`
|
||||
3. Найти **Strix Camera Discovery**
|
||||
4. Нажать **Install**
|
||||
5. Нажать **Start**
|
||||
6. Нажать **Open Web UI**
|
||||
|
||||
## ⚙️ Конфигурация
|
||||
|
||||
Пользователи могут настроить через UI Home Assistant:
|
||||
|
||||
```yaml
|
||||
log_level: info # debug, info, warn, error
|
||||
port: 4567 # Порт веб-интерфейса
|
||||
strict_validation: true # Строгая валидация потоков
|
||||
```
|
||||
|
||||
## 🔄 Обновление
|
||||
|
||||
### Новые функции/исправления
|
||||
|
||||
```bash
|
||||
git add .
|
||||
git commit -m "feat: новая функция"
|
||||
git push origin main
|
||||
```
|
||||
|
||||
Автоматически создастся dev-сборка.
|
||||
|
||||
### Новый релиз
|
||||
|
||||
```bash
|
||||
# Обновить версию
|
||||
sed -i 's/^version:.*/version: "1.1.0"/' homeassistant-addon/config.yaml
|
||||
|
||||
# Обновить CHANGELOG.md
|
||||
nano homeassistant-addon/CHANGELOG.md
|
||||
|
||||
# Закоммитить и создать тег
|
||||
git add .
|
||||
git commit -m "release: v1.1.0"
|
||||
git tag v1.1.0
|
||||
git push origin main v1.1.0
|
||||
```
|
||||
|
||||
## 🏗️ Как это работает
|
||||
|
||||
### GitHub Actions Workflow
|
||||
|
||||
Файл: `.github/workflows/addon.yml`
|
||||
|
||||
При пуше в `main` или создании тега `v*`:
|
||||
|
||||
1. **Build Stage** (для каждой архитектуры):
|
||||
- Собирает Go бинарник
|
||||
- Копирует данные и WebUI
|
||||
- Создает Docker образ
|
||||
- Публикует в ghcr.io
|
||||
|
||||
2. **Update Repository**:
|
||||
- Обновляет версию в config.yaml
|
||||
- Обновляет repository.yaml
|
||||
- Коммитит изменения (только для тегов)
|
||||
|
||||
### Docker Images
|
||||
|
||||
Публикуются в GitHub Container Registry:
|
||||
- `ghcr.io/eduard256/strix-addon-aarch64:latest`
|
||||
- `ghcr.io/eduard256/strix-addon-amd64:latest`
|
||||
- `ghcr.io/eduard256/strix-addon-armv7:latest`
|
||||
|
||||
Версионные теги:
|
||||
- `ghcr.io/eduard256/strix-addon-aarch64:1.0.0`
|
||||
- и т.д.
|
||||
|
||||
## 📦 Что включено
|
||||
|
||||
### Runtime зависимости
|
||||
- **ffmpeg** - для валидации RTSP потоков
|
||||
- **ca-certificates** - для HTTPS
|
||||
- **tzdata** - для корректных временных меток
|
||||
- **wget** - для healthcheck
|
||||
|
||||
### Данные приложения
|
||||
- **База камер** - 3,600+ моделей
|
||||
- **WebUI** - встроенный веб-интерфейс
|
||||
- **API** - RESTful API для автоматизации
|
||||
|
||||
## 🔒 Безопасность
|
||||
|
||||
- Запуск от non-root пользователя (UID 1000)
|
||||
- Минимальный Alpine образ
|
||||
- Отсутствие хранения credentials
|
||||
- Работа только в локальной сети
|
||||
|
||||
## 📚 Документация
|
||||
|
||||
- **README.md** - Краткое описание для пользователей
|
||||
- **DOCS.md** - Полная документация по использованию
|
||||
- **CHANGELOG.md** - История изменений
|
||||
- **INSTALLATION.md** - Инструкция для разработчиков
|
||||
|
||||
## 🎨 TODO (опционально)
|
||||
|
||||
1. **Иконки**:
|
||||
- Создать `icon.png` (128x128px)
|
||||
- Создать `logo.png` (256x256px)
|
||||
- Стиль: сова или камера, синий/белый (Home Assistant style)
|
||||
|
||||
2. **Улучшения**:
|
||||
- Добавить скриншоты в README.md
|
||||
- Создать видео-инструкцию
|
||||
- Перевести DOCS.md на русский
|
||||
|
||||
3. **Интеграции**:
|
||||
- Автоматическое добавление камер в HA
|
||||
- Генератор конфигов для go2rtc
|
||||
- Генератор конфигов для Frigate
|
||||
|
||||
## 🤝 Публикация
|
||||
|
||||
### Вариант 1: Кастомный репозиторий (Рекомендуется)
|
||||
|
||||
Пользователи добавляют вручную:
|
||||
```
|
||||
https://github.com/eduard256/Strix
|
||||
```
|
||||
|
||||
**Плюсы**:
|
||||
- Полный контроль
|
||||
- Быстрые обновления
|
||||
- Нет процесса одобрения
|
||||
|
||||
### Вариант 2: Home Assistant Community Add-ons
|
||||
|
||||
Отправить в официальный репозиторий:
|
||||
https://github.com/home-assistant/addons
|
||||
|
||||
**Плюсы**:
|
||||
- Официальное признание
|
||||
- Проще найти пользователям
|
||||
- Автообновления
|
||||
|
||||
**Минусы**:
|
||||
- Строгие требования
|
||||
- Процесс ревью
|
||||
- Медленные обновления
|
||||
|
||||
## 🐛 Решение проблем
|
||||
|
||||
### Сборка не прошла
|
||||
|
||||
Проверить GitHub Actions:
|
||||
```
|
||||
https://github.com/eduard256/Strix/actions
|
||||
```
|
||||
|
||||
### Аддон не устанавливается
|
||||
|
||||
- Проверить синтаксис config.yaml
|
||||
- Убедиться что образы опубликованы в ghcr.io
|
||||
- Проверить repository.yaml в корне
|
||||
|
||||
### Аддон не запускается
|
||||
|
||||
Смотреть логи в Home Assistant:
|
||||
- Страница аддона → вкладка **Log**
|
||||
- Частые проблемы:
|
||||
- Порт занят
|
||||
- Отсутствуют файлы данных
|
||||
- Ошибки прав доступа
|
||||
|
||||
## ✅ Чеклист перед релизом
|
||||
|
||||
- [ ] Код протестирован
|
||||
- [ ] Версия установлена в config.yaml
|
||||
- [ ] CHANGELOG.md обновлен
|
||||
- [ ] Иконки добавлены (опционально)
|
||||
- [ ] README.md проверен
|
||||
- [ ] DOCS.md проверен
|
||||
- [ ] GitHub Actions протестирован
|
||||
- [ ] Создан git тег (v1.0.0)
|
||||
- [ ] Docker образы опубликованы
|
||||
- [ ] Тестовая установка в Home Assistant
|
||||
|
||||
## 🎉 Готово!
|
||||
|
||||
После выполнения чеклиста ваш Home Assistant Add-on готов к использованию!
|
||||
|
||||
Поделитесь с сообществом:
|
||||
- Форум Home Assistant
|
||||
- Reddit r/homeassistant
|
||||
- GitHub Discussions
|
||||
- Discord серверы
|
||||
|
||||
---
|
||||
|
||||
**Вопросы?** Создайте Issue на GitHub: https://github.com/eduard256/Strix/issues
|
||||
Reference in New Issue
Block a user