chore(M00-A): 建立单仓库基线和参考清单
This commit is contained in:
@@ -0,0 +1,69 @@
|
||||
#!/usr/bin/env bash
|
||||
set -euo pipefail
|
||||
|
||||
VERSION="0.0.1-m00-baseline"
|
||||
APP_ROOT="/opt/apps"
|
||||
REPO_SSH="ssh://git@127.0.0.1:2222/panda/qipai.git"
|
||||
PUBLIC_API="https://api.txyundm.cn"
|
||||
|
||||
print_header() {
|
||||
echo "自助棋牌室系统部署菜单 ${VERSION}"
|
||||
echo "生产目录: ${APP_ROOT}"
|
||||
echo "固定 API: ${PUBLIC_API}"
|
||||
echo
|
||||
}
|
||||
|
||||
check_arch() {
|
||||
local kernel_arch dpkg_arch bits
|
||||
kernel_arch="$(uname -m 2>/dev/null || echo unknown)"
|
||||
dpkg_arch="$(dpkg --print-architecture 2>/dev/null || echo unknown)"
|
||||
bits="$(getconf LONG_BIT 2>/dev/null || echo unknown)"
|
||||
echo "内核架构: ${kernel_arch}"
|
||||
echo "DPKG 架构: ${dpkg_arch}"
|
||||
echo "用户空间位数: ${bits}"
|
||||
if [ "${kernel_arch}" != "x86_64" ] || [ "${dpkg_arch}" != "amd64" ] || [ "${bits}" != "64" ]; then
|
||||
echo "FAIL: 仅支持 Ubuntu 24.04 x86-64/amd64。"
|
||||
exit 1
|
||||
fi
|
||||
}
|
||||
|
||||
quick_check() {
|
||||
echo "== 启动快检 =="
|
||||
check_arch
|
||||
command -v git >/dev/null 2>&1 && echo "Git: PASS" || echo "Git: WARN 未安装"
|
||||
command -v nginx >/dev/null 2>&1 && echo "Nginx: PASS" || echo "Nginx: WARN 未安装"
|
||||
command -v node >/dev/null 2>&1 && echo "Node.js: PASS" || echo "Node.js: WARN 未安装"
|
||||
echo "仓库: ${REPO_SSH}"
|
||||
}
|
||||
|
||||
not_implemented() {
|
||||
echo "当前 M00 基线仅提供菜单骨架;该选项将在后续子阶段完善。"
|
||||
}
|
||||
|
||||
main_menu() {
|
||||
while true; do
|
||||
print_header
|
||||
echo "1. 首次安装"
|
||||
echo "2. 更新业务服务"
|
||||
echo "3. 安装或检查 EMQX"
|
||||
echo "4. 配置域名与 HTTPS"
|
||||
echo "5. 查看状态"
|
||||
echo "6. 备份"
|
||||
echo "7. 恢复"
|
||||
echo "8. 回滚"
|
||||
echo "9. 诊断"
|
||||
echo "0. 退出"
|
||||
printf "请选择: "
|
||||
read -r choice
|
||||
case "${choice}" in
|
||||
1|2|3|4|6|7|8) not_implemented ;;
|
||||
5|9) quick_check ;;
|
||||
0) exit 0 ;;
|
||||
*) echo "无效选项" ;;
|
||||
esac
|
||||
echo
|
||||
done
|
||||
}
|
||||
|
||||
main_menu "$@"
|
||||
|
||||
Reference in New Issue
Block a user