fix: 设置默认账号为 demo/demo123,修复数据路径
问题修复: 1. ✅ 默认账号设置 - db.rs: 默认密码改为 demo123 - .env.template: 默认密码改为 demo123 - install.sh: 默认密码改为 demo123 2. ✅ 数据路径动态化 - db.rs: 使用 dirs::home_dir() 自动检测用户主目录 - 默认路径: {HOME}/momentry_studio/data/users - 支持通过 MOMENTRY_DATA_DIR 环境变量自定义 验证脚本: - scripts/verify_default_setup.sh: 验证默认账号和数据路径 目标: - 安装后可直接使用 demo/demo123 登录 - 数据路径随用户主目录自动调整 - 适用于任何用户环境 影响: - demo 用户: 密码固定为 demo123 - 数据路径: 自动检测 {HOME}/momentry_studio/data/users - 安装即可使用,无需额外配置
This commit is contained in:
210
scripts/verify_default_setup.sh
Executable file
210
scripts/verify_default_setup.sh
Executable file
@@ -0,0 +1,210 @@
|
||||
#!/bin/bash
|
||||
# 验证默认账号和数据路径
|
||||
|
||||
echo "================================================================================
|
||||
默认账号和数据路径验证
|
||||
================================================================================
|
||||
"
|
||||
|
||||
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
||||
PROJECT_ROOT="$(dirname "$SCRIPT_DIR")"
|
||||
|
||||
echo "项目根目录: ${PROJECT_ROOT}"
|
||||
echo ""
|
||||
|
||||
# 1. 检查默认账号
|
||||
echo "1. 检查默认账号设置"
|
||||
echo "--------------------------------------------------------------------------------"
|
||||
|
||||
# 检查 db.rs
|
||||
if grep -q '"demo123"' "${PROJECT_ROOT}/src-tauri/src/db.rs"; then
|
||||
echo "✅ db.rs: 默认密码设置为 demo123"
|
||||
else
|
||||
echo "❌ db.rs: 默认密码未设置为 demo123"
|
||||
fi
|
||||
|
||||
# 检查 .env.template
|
||||
if grep -q "MOMENTRY_DEFAULT_PASSWORD=demo123" "${PROJECT_ROOT}/.env.template"; then
|
||||
echo "✅ .env.template: 默认密码设置为 demo123"
|
||||
else
|
||||
echo "❌ .env.template: 默认密码未设置为 demo123"
|
||||
fi
|
||||
|
||||
# 检查 install.sh
|
||||
if grep -q 'DEFAULT_PASSWORD="demo123"' "${PROJECT_ROOT}/install.sh"; then
|
||||
echo "✅ install.sh: 默认密码设置为 demo123"
|
||||
else
|
||||
echo "❌ install.sh: 默认密码未设置为 demo123"
|
||||
fi
|
||||
|
||||
echo ""
|
||||
|
||||
# 2. 检查数据路径
|
||||
echo "2. 检查数据路径设置"
|
||||
echo "--------------------------------------------------------------------------------"
|
||||
|
||||
# 检查 db.rs 是否使用动态路径
|
||||
if grep -q 'dirs::home_dir()' "${PROJECT_ROOT}/src-tauri/src/db.rs"; then
|
||||
echo "✅ db.rs: 使用动态路径 (dirs::home_dir())"
|
||||
else
|
||||
echo "❌ db.rs: 未使用动态路径"
|
||||
fi
|
||||
|
||||
# 检查 db.rs 是否使用绝对路径
|
||||
if grep -q 'momentry_studio/data/users' "${PROJECT_ROOT}/src-tauri/src/db.rs"; then
|
||||
echo "✅ db.rs: 使用绝对路径 (momentry_studio/data/users)"
|
||||
else
|
||||
echo "❌ db.rs: 未使用绝对路径"
|
||||
fi
|
||||
|
||||
# 检查 paths.rs 是否存在
|
||||
if [ -f "${PROJECT_ROOT}/src-tauri/src/paths.rs" ]; then
|
||||
echo "✅ paths.rs: 存在"
|
||||
|
||||
# 检查关键函数
|
||||
if grep -q 'pub fn get_home_dir()' "${PROJECT_ROOT}/src-tauri/src/paths.rs"; then
|
||||
echo " ✅ get_home_dir() 函数存在"
|
||||
fi
|
||||
|
||||
if grep -q 'pub fn get_momentry_core_root()' "${PROJECT_ROOT}/src-tauri/src/paths.rs"; then
|
||||
echo " ✅ get_momentry_core_root() 函数存在"
|
||||
fi
|
||||
else
|
||||
echo "❌ paths.rs: 不存在"
|
||||
fi
|
||||
|
||||
echo ""
|
||||
|
||||
# 3. 检查环境变量
|
||||
echo "3. 检查环境变量模板"
|
||||
echo "--------------------------------------------------------------------------------"
|
||||
|
||||
if [ -f "${PROJECT_ROOT}/.env.template" ]; then
|
||||
echo "✅ .env.template 存在"
|
||||
|
||||
# 检查关键环境变量
|
||||
if grep -q "MOMENTRY_DATA_DIR=" "${PROJECT_ROOT}/.env.template"; then
|
||||
echo " ✅ MOMENTRY_DATA_DIR 配置存在"
|
||||
fi
|
||||
|
||||
if grep -q "MOMENTRY_CORE_ROOT=" "${PROJECT_ROOT}/.env.template"; then
|
||||
echo " ✅ MOMENTRY_CORE_ROOT 配置存在"
|
||||
fi
|
||||
|
||||
if grep -q "STORAGE_ROOT=" "${PROJECT_ROOT}/.env.template"; then
|
||||
echo " ✅ STORAGE_ROOT 配置存在"
|
||||
fi
|
||||
else
|
||||
echo "❌ .env.template 不存在"
|
||||
fi
|
||||
|
||||
echo ""
|
||||
|
||||
# 4. 模拟安装测试
|
||||
echo "4. 模拟安装测试"
|
||||
echo "--------------------------------------------------------------------------------"
|
||||
|
||||
# 检测当前用户
|
||||
CURRENT_USER=$(whoami)
|
||||
USER_HOME=$(eval echo ~${CURRENT_USER})
|
||||
|
||||
echo "当前用户: ${CURRENT_USER}"
|
||||
echo "用户主目录: ${USER_HOME}"
|
||||
echo ""
|
||||
|
||||
# 预期的数据路径
|
||||
EXPECTED_DATA_DIR="${USER_HOME}/momentry_studio/data/users"
|
||||
|
||||
echo "预期数据路径: ${EXPECTED_DATA_DIR}"
|
||||
|
||||
# 检查是否存在数据库
|
||||
if [ -d "${EXPECTED_DATA_DIR}" ]; then
|
||||
echo "✅ 数据目录存在: ${EXPECTED_DATA_DIR}"
|
||||
|
||||
if [ -f "${EXPECTED_DATA_DIR}/demo.sqlite" ]; then
|
||||
echo " ✅ demo.sqlite 存在"
|
||||
|
||||
# 检查用户表
|
||||
sqlite3 "${EXPECTED_DATA_DIR}/demo.sqlite" "SELECT username FROM app_users WHERE username='demo';" 2>/dev/null && {
|
||||
echo " ✅ demo 用户存在于数据库中"
|
||||
} || {
|
||||
echo " ⚠️ demo 用户不存在于数据库中"
|
||||
}
|
||||
else
|
||||
echo " ⚠️ demo.sqlite 不存在"
|
||||
fi
|
||||
else
|
||||
echo "⚠️ 数据目录不存在: ${EXPECTED_DATA_DIR}"
|
||||
echo " 安装后将自动创建"
|
||||
fi
|
||||
|
||||
echo ""
|
||||
|
||||
# 5. 总结
|
||||
echo "================================================================================
|
||||
验证总结
|
||||
================================================================================
|
||||
"
|
||||
|
||||
ISSUES=0
|
||||
|
||||
# 检查默认账号
|
||||
if grep -q '"demo123"' "${PROJECT_ROOT}/src-tauri/src/db.rs" && \
|
||||
grep -q "MOMENTRY_DEFAULT_PASSWORD=demo123" "${PROJECT_ROOT}/.env.template" && \
|
||||
grep -q 'DEFAULT_PASSWORD="demo123"' "${PROJECT_ROOT}/install.sh"; then
|
||||
echo "✅ 默认账号设置正确"
|
||||
echo " 用户名: demo"
|
||||
echo " 密码: demo123"
|
||||
else
|
||||
echo "❌ 默认账号设置有问题"
|
||||
ISSUES=$((ISSUES + 1))
|
||||
fi
|
||||
|
||||
echo ""
|
||||
|
||||
# 检查数据路径
|
||||
if grep -q 'dirs::home_dir()' "${PROJECT_ROOT}/src-tauri/src/db.rs" && \
|
||||
grep -q 'momentry_studio/data/users' "${PROJECT_ROOT}/src-tauri/src/db.rs"; then
|
||||
echo "✅ 数据路径使用动态路径"
|
||||
echo " 自动检测用户主目录: ${USER_HOME}"
|
||||
echo " 数据路径: ${EXPECTED_DATA_DIR}"
|
||||
else
|
||||
echo "❌ 数据路径未使用动态路径"
|
||||
ISSUES=$((ISSUES + 1))
|
||||
fi
|
||||
|
||||
echo ""
|
||||
|
||||
if [ $ISSUES -eq 0 ]; then
|
||||
echo "================================================================================
|
||||
✅ 所有检查通过
|
||||
================================================================================
|
||||
"
|
||||
echo "准备状态:"
|
||||
echo " ✅ 默认账号: demo / demo123"
|
||||
echo " ✅ 数据路径: 自动检测用户主目录"
|
||||
echo " ✅ 可安装到任何系统"
|
||||
echo ""
|
||||
echo "下一步:"
|
||||
echo " 1. 运行安装: ./scripts/install.sh"
|
||||
echo " 2. 验证安装: ./scripts/check_user_isolation.sh"
|
||||
echo " 3. 测试登录: 用户名 demo, 密码 demo123"
|
||||
else
|
||||
echo "================================================================================
|
||||
❌ 发现 ${ISSUES} 个问题
|
||||
================================================================================
|
||||
"
|
||||
echo "需要修复的问题:"
|
||||
|
||||
if ! grep -q '"demo123"' "${PROJECT_ROOT}/src-tauri/src/db.rs"; then
|
||||
echo " - db.rs 需要设置默认密码为 demo123"
|
||||
fi
|
||||
|
||||
if ! grep -q 'dirs::home_dir()' "${PROJECT_ROOT}/src-tauri/src/db.rs"; then
|
||||
echo " - db.rs 需要使用动态路径"
|
||||
fi
|
||||
fi
|
||||
|
||||
echo ""
|
||||
echo "================================================================================
|
||||
"
|
||||
Reference in New Issue
Block a user