docs: 添加部署指南文档
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
parent
79e39c28c9
commit
db02581f5c
137
DEPLOY.md
Normal file
137
DEPLOY.md
Normal file
@ -0,0 +1,137 @@
|
||||
# SigMesh Gateway - 部署脚本
|
||||
|
||||
## 自动部署脚本
|
||||
|
||||
### 部署到 Home Assistant
|
||||
|
||||
```bash
|
||||
#!/bin/bash
|
||||
# deploy.sh - 部署到 Home Assistant
|
||||
|
||||
# 配置
|
||||
HA_CONFIG_DIR="${HA_CONFIG_DIR:-$HOME/.homeassistant}"
|
||||
PROJECT_DIR="$(cd "$(dirname "$0")" && pwd)"
|
||||
|
||||
echo "=== SigMesh Gateway 部署脚本 ==="
|
||||
echo "项目目录:$PROJECT_DIR"
|
||||
echo "HA 配置目录:$HA_CONFIG_DIR"
|
||||
|
||||
# 创建目录
|
||||
mkdir -p "$HA_CONFIG_DIR/custom_components"
|
||||
|
||||
# 复制集成文件
|
||||
echo "复制集成文件..."
|
||||
cp -r "$PROJECT_DIR/custom_components/sigmesh_gateway" \
|
||||
"$HA_CONFIG_DIR/custom_components/"
|
||||
|
||||
# 设置权限
|
||||
echo "设置权限..."
|
||||
chown -R $(id -u):$(id -g) "$HA_CONFIG_DIR/custom_components/sigmesh_gateway"
|
||||
|
||||
# 验证配置
|
||||
echo "验证配置..."
|
||||
if [ -f "$HA_CONFIG_DIR/custom_components/sigmesh_gateway/manifest.json" ]; then
|
||||
echo "✓ 部署成功"
|
||||
echo ""
|
||||
echo "下一步:"
|
||||
echo "1. 重启 Home Assistant: ha core restart"
|
||||
echo "2. 在 HA 中添加集成:设置 → 设备与服务 → 添加集成 → SigMesh Gateway"
|
||||
else
|
||||
echo "✗ 部署失败"
|
||||
exit 1
|
||||
fi
|
||||
```
|
||||
|
||||
### 创建发布包(用于 HACS)
|
||||
|
||||
```bash
|
||||
#!/bin/bash
|
||||
# release.sh - 创建 HACS 发布包
|
||||
|
||||
PROJECT_DIR="$(cd "$(dirname "$0")" && pwd)"
|
||||
RELEASE_DIR="$PROJECT_DIR/release"
|
||||
VERSION="${1:-1.0.0}"
|
||||
|
||||
echo "=== 创建 HACS 发布包 ==="
|
||||
echo "版本:$VERSION"
|
||||
|
||||
# 清理旧文件
|
||||
rm -rf "$RELEASE_DIR"
|
||||
mkdir -p "$RELEASE_DIR"
|
||||
|
||||
# 复制必要文件
|
||||
cp -r "$PROJECT_DIR/custom_components" "$RELEASE_DIR/"
|
||||
cp "$PROJECT_DIR/hacs.json" "$RELEASE_DIR/"
|
||||
cp "$PROJECT_DIR/README.md" "$RELEASE_DIR/"
|
||||
cp "$PROJECT_DIR/LICENSE" "$RELEASE_DIR/" 2>/dev/null || true
|
||||
|
||||
# 创建 zip 包
|
||||
cd "$RELEASE_DIR"
|
||||
zip -r "sigmesh_gateway.zip" ./*
|
||||
|
||||
echo "✓ 发布包创建成功:$RELEASE_DIR/sigmesh_gateway.zip"
|
||||
```
|
||||
|
||||
```
|
||||
|
||||
保存后运行:
|
||||
```bash
|
||||
chmod +x deploy.sh
|
||||
./deploy.sh
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 快速部署命令
|
||||
|
||||
**一行部署**:
|
||||
```bash
|
||||
cp -r custom_components/sigmesh_gateway ~/.homeassistant/custom_components/ && ha core restart
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 部署检查清单
|
||||
|
||||
- [ ] HA 配置目录确认(默认 `~/.homeassistant`)
|
||||
- [ ] `custom_components` 目录存在
|
||||
- [ ] 文件权限正确(homeassistant 用户可读)
|
||||
- [ ] 重启 HA 使集成生效
|
||||
- [ ] 在 HA UI 中确认集成已加载
|
||||
- [ ] 配置串口设备
|
||||
- [ ] 验证实体创建成功
|
||||
|
||||
---
|
||||
|
||||
## 常见问题
|
||||
|
||||
**Q: 集成不显示?**
|
||||
```bash
|
||||
# 检查 manifest.json
|
||||
cat ~/.homeassistant/custom_components/sigmesh_gateway/manifest.json
|
||||
|
||||
# 查看 HA 日志
|
||||
tail -f ~/.homeassistant/home-assistant.log | grep sigmesh
|
||||
```
|
||||
|
||||
**Q: 串口权限问题?**
|
||||
```bash
|
||||
# 添加用户到 dialout 组
|
||||
sudo usermod -a -G dialout homeassistant
|
||||
|
||||
# 重启 HA
|
||||
ha core restart
|
||||
```
|
||||
|
||||
**Q: 如何更新代码?**
|
||||
```bash
|
||||
# 拉取最新代码
|
||||
cd /home/ubuntu/workspace/cherry-studio/enginneer/impress_sig_mesh_hacs
|
||||
git pull origin main
|
||||
|
||||
# 重新部署
|
||||
./deploy.sh
|
||||
|
||||
# 重启 HA
|
||||
ha core restart
|
||||
```
|
||||
Loading…
Reference in New Issue
Block a user