CI / Client installer (macos-latest) (push) Canceled after 0s
CI / Client installer (ubuntu-latest) (push) Canceled after 0s
CI / Client installer (windows-latest) (push) Canceled after 0s
CI / test (22) (push) Canceled after 0s
CI / test (24) (push) Canceled after 0s
CI / release-smoke (push) Canceled after 0s
33 lines
1.1 KiB
Bash
Executable File
33 lines
1.1 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
set -Eeuo pipefail
|
|
|
|
project_root="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)"
|
|
domain="approval.justconn.top"
|
|
service_name="dingtalk-approval-mcp.service"
|
|
unit_file="${XDG_CONFIG_HOME:-${HOME}/.config}/systemd/user/${service_name}"
|
|
nginx_site="/etc/nginx/conf.d/${domain}.conf"
|
|
web_root="/var/www/${domain}"
|
|
|
|
if [[ "${nginx_site}" != "/etc/nginx/conf.d/approval.justconn.top.conf" || "${web_root}" != "/var/www/approval.justconn.top" ]]; then
|
|
echo "拒绝卸载:部署目标校验失败。" >&2
|
|
exit 1
|
|
fi
|
|
|
|
if [[ "${1:-}" != "--yes" ]]; then
|
|
read -r -p "卸载 ${domain} 网关和公开文件?凭证、OAuth 数据及证书会保留。[y/N] " answer
|
|
[[ "${answer}" == "y" || "${answer}" == "Y" ]] || exit 0
|
|
fi
|
|
|
|
systemctl --user disable --now "${service_name}" >/dev/null 2>&1 || true
|
|
rm -f "${unit_file}"
|
|
systemctl --user daemon-reload
|
|
systemctl --user reset-failed "${service_name}" >/dev/null 2>&1 || true
|
|
|
|
sudo rm -f "${nginx_site}"
|
|
sudo rm -rf "${web_root}"
|
|
sudo nginx -t
|
|
sudo systemctl reload nginx
|
|
|
|
echo "卸载完成。"
|
|
echo "已保留:${project_root}/.secrets、${project_root}/.runtime 和 ${domain} 的证书。"
|