chore(moicen): add env/bootstrap scripts for split AuthCore layout
Make moicen env copying compatible with sibling AuthCore repo and add start/stop/build helper scripts for huiwings stack bring-up on moicen hosts. Made-with: Cursor
This commit is contained in:
+42
@@ -0,0 +1,42 @@
|
||||
#!/usr/bin/env bash
|
||||
# 在 **moicen 本机**:临时建立到 alchemy 的 SSH 本地转发,经 socks5h://127.0.0.1:1080 出网,完成
|
||||
# AuthCore/htyuc 与 huike-back 中 htyws、htykc 的 `cargo build --release`;结束后关闭隧道,不污染当前 shell 的代理变量。
|
||||
# 与 `plan_skills/moicen/moicen-tunnel-alchemy-v2ray-1080-proxy.md` §4 同思路。
|
||||
# 用法:在 huike-back 根
|
||||
# MOICEN_REPO_ROOT=~/works/huiwing-migration ./scripts/moicen_cargo_build_release_via_alchemy_socks.sh
|
||||
# 可改 ALCH_SSH=alchemy-studio.cn
|
||||
set -euo pipefail
|
||||
|
||||
ALCH_SSH="${ALCH_SSH:-alchemy-studio.cn}"
|
||||
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
||||
HUIKE_DEFAULT="$(cd "$SCRIPT_DIR/.." && pwd)"
|
||||
REPO_ROOT_DEFAULT="$(cd "$SCRIPT_DIR/../.." && pwd)"
|
||||
MOICEN_REPO_ROOT="${MOICEN_REPO_ROOT:-$REPO_ROOT_DEFAULT}"
|
||||
AUTH="${MOICEN_AUTH_ROOT:-$MOICEN_REPO_ROOT/AuthCore}"
|
||||
HUIKE="${MOICEN_HUIKE_ROOT:-$HUIKE_DEFAULT}"
|
||||
|
||||
[ -f "$AUTH/Cargo.toml" ] && [ -f "$HUIKE/Cargo.toml" ] || { echo "检查 MOICEN_REPO_ROOT / 路径: AUTH=$AUTH HUIKE=$HUIKE" >&2; exit 1; }
|
||||
command -v ssh >/dev/null
|
||||
|
||||
cleanup() { kill "$TUNPID" 2>/dev/null || true; }
|
||||
# shellcheck disable=SC2016
|
||||
if ss -lntp 2>/dev/null | grep -q ':1080'; then
|
||||
echo "本机 1080 已被占用;请先关闭已有 SSH 转发或改用他口(并同步 ALL_PROXY 文档)" >&2
|
||||
exit 1
|
||||
fi
|
||||
ssh -N -o ExitOnForwardFailure=yes -o ServerAliveInterval=30 -o ConnectTimeout=15 \
|
||||
-L 127.0.0.1:1080:127.0.0.1:1080 "weli@$ALCH_SSH" &
|
||||
TUNPID=$!
|
||||
sleep 3
|
||||
trap cleanup EXIT INT TERM
|
||||
|
||||
export ALL_PROXY=socks5h://127.0.0.1:1080
|
||||
export https_proxy=$ALL_PROXY
|
||||
export http_proxy=$ALL_PROXY
|
||||
# shellcheck disable=SC1090
|
||||
. "$HOME/.cargo/env"
|
||||
export CARGO_HTTP_MULTIPLEXING=true
|
||||
|
||||
( cd "$AUTH" && cargo build --release -p htyuc )
|
||||
( cd "$HUIKE" && cargo build --release -p htyws -p htykc )
|
||||
echo "OK. release 构建完成。隧道本脚本退出时关闭。启动 HTTP 服务时请使用 scripts/moicen_start_huiwings_stack.sh(已去代理)。"
|
||||
Reference in New Issue
Block a user