deploy(M00-E): 完善菜单式部署骨架
This commit is contained in:
@@ -0,0 +1,62 @@
|
||||
#!/usr/bin/env bash
|
||||
set -euo pipefail
|
||||
|
||||
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
||||
# shellcheck source=lib.sh
|
||||
. "${SCRIPT_DIR}/lib.sh"
|
||||
|
||||
qipai_init_layout() {
|
||||
qipai_require_root_for_write
|
||||
|
||||
local dirs=(
|
||||
"${APP_ROOT}"
|
||||
"${APP_ROOT}/qipai-repo"
|
||||
"${APP_ROOT}/qipai-backend"
|
||||
"${APP_ROOT}/qipai-admin"
|
||||
"${APP_ROOT}/qipai-miniapp"
|
||||
"${APP_ROOT}/releases"
|
||||
"${APP_ROOT}/backups/mysql"
|
||||
"${APP_ROOT}/backups/emqx"
|
||||
"${APP_ROOT}/backups/files"
|
||||
"${APP_ROOT}/logs"
|
||||
"${APP_ROOT}/nginx"
|
||||
"${APP_ROOT}/redis-reserved"
|
||||
"${APP_ROOT}/run"
|
||||
)
|
||||
|
||||
for dir in "${dirs[@]}"; do
|
||||
mkdir -p "$dir"
|
||||
qipai_pass "directory exists: $dir"
|
||||
done
|
||||
|
||||
if id qipai >/dev/null 2>&1; then
|
||||
qipai_pass "user qipai exists"
|
||||
else
|
||||
qipai_warn "user qipai does not exist; create manually before production deployment"
|
||||
fi
|
||||
|
||||
if id git >/dev/null 2>&1; then
|
||||
qipai_pass "user git exists"
|
||||
else
|
||||
qipai_warn "user git does not exist; required for native Gitea service"
|
||||
fi
|
||||
|
||||
cat >"${APP_ROOT}/run/layout.json" <<EOF
|
||||
{
|
||||
"generatedAt": "$(qipai_timestamp)",
|
||||
"appRoot": "${APP_ROOT}",
|
||||
"repo": "$(qipai_repo_dir)",
|
||||
"backend": "${APP_ROOT}/qipai-backend",
|
||||
"admin": "${APP_ROOT}/qipai-admin",
|
||||
"miniapp": "${APP_ROOT}/qipai-miniapp",
|
||||
"releases": "$(qipai_release_dir)",
|
||||
"redis": "RESERVED/DISABLED"
|
||||
}
|
||||
EOF
|
||||
qipai_pass "layout manifest written: ${APP_ROOT}/run/layout.json"
|
||||
}
|
||||
|
||||
if [ "${1:-}" = "--run" ]; then
|
||||
qipai_init_layout
|
||||
fi
|
||||
|
||||
Reference in New Issue
Block a user