chore(deploy): axs Gitea 为默认发布源 + 全量分批推送脚本
主项目推送到 https://axs.kuma1xn.vip 时分批提交避免 Cloudflare 524。
This commit is contained in:
@@ -23,7 +23,7 @@ set -euo pipefail
|
||||
# 内置路径/域名(无敏感信息,可提交 Git)
|
||||
# ═══════════════════════════════════════════════════════════════════
|
||||
NEXUS_ROOT="${NEXUS_ROOT:-/opt/nexus}"
|
||||
NEXUS_GITEA_HOST="${NEXUS_GITEA_HOST:-66.154.115.8:3000}"
|
||||
NEXUS_GITEA_HOST="${NEXUS_GITEA_HOST:-axs.kuma1xn.vip}"
|
||||
NEXUS_GITEA_REPO="${NEXUS_GITEA_REPO:-admin/Nexus.git}"
|
||||
NEXUS_DOMAIN="${NEXUS_DOMAIN:-api.synaglobal.vip}"
|
||||
NEXUS_PROFILE="${NEXUS_PROFILE:-2c8g}"
|
||||
@@ -726,10 +726,14 @@ require_token() {
|
||||
}
|
||||
|
||||
git_remote_url() {
|
||||
local scheme=http
|
||||
if [[ "$NEXUS_GITEA_HOST" != *:* ]]; then
|
||||
scheme="${NEXUS_GITEA_SCHEME:-https}"
|
||||
fi
|
||||
if [[ -n "${NEXUS_GITEA_TOKEN:-}" ]]; then
|
||||
echo "http://admin:${NEXUS_GITEA_TOKEN}@${NEXUS_GITEA_HOST}/${NEXUS_GITEA_REPO}"
|
||||
echo "${scheme}://admin:${NEXUS_GITEA_TOKEN}@${NEXUS_GITEA_HOST}/${NEXUS_GITEA_REPO}"
|
||||
else
|
||||
echo "http://${NEXUS_GITEA_HOST}/${NEXUS_GITEA_REPO}"
|
||||
echo "${scheme}://${NEXUS_GITEA_HOST}/${NEXUS_GITEA_REPO}"
|
||||
fi
|
||||
}
|
||||
|
||||
|
||||
@@ -0,0 +1,55 @@
|
||||
#!/usr/bin/env bash
|
||||
# 主项目全量推送到 axs Gitea(分批避免 Cloudflare 524 超时)
|
||||
#
|
||||
# 用法:
|
||||
# bash scripts/git-push-axs-full.sh
|
||||
# bash scripts/git-push-axs-full.sh main
|
||||
#
|
||||
set -euo pipefail
|
||||
|
||||
ROOT="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)"
|
||||
SECRETS="${ROOT}/deploy/nexus-1panel.secrets.sh"
|
||||
if [[ -f "$SECRETS" ]]; then
|
||||
# shellcheck disable=SC1090
|
||||
source "$SECRETS"
|
||||
fi
|
||||
|
||||
HOST="${NEXUS_GITEA_HOST:-axs.kuma1xn.vip}"
|
||||
REPO="${NEXUS_GITEA_REPO:-admin/Nexus.git}"
|
||||
TOKEN="${NEXUS_GITEA_TOKEN:?缺少 NEXUS_GITEA_TOKEN,请配置 $SECRETS}"
|
||||
BRANCH="${1:-main}"
|
||||
BATCH="${NEXUS_GITEA_PUSH_BATCH:-30}"
|
||||
|
||||
if [[ "$HOST" == *:* ]]; then
|
||||
SCHEME="${NEXUS_GITEA_SCHEME:-http}"
|
||||
else
|
||||
SCHEME="${NEXUS_GITEA_SCHEME:-https}"
|
||||
fi
|
||||
|
||||
URL="${SCHEME}://admin:${TOKEN}@${HOST}/${REPO}"
|
||||
|
||||
cd "$ROOT"
|
||||
if ! git rev-parse --verify "$BRANCH" >/dev/null 2>&1; then
|
||||
echo "ERROR: 本地分支 $BRANCH 不存在" >&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
mapfile -t COMMITS < <(git rev-list --reverse "$BRANCH")
|
||||
TOTAL=${#COMMITS[@]}
|
||||
echo "═══ Nexus 全量推送 axs Gitea ═══"
|
||||
echo "远程: ${SCHEME}://${HOST}/${REPO}"
|
||||
echo "分支: $BRANCH(共 $TOTAL 个提交,每批 $BATCH 个)"
|
||||
|
||||
git_cfg=( -c http.postBuffer=524288000 -c http.lowSpeedLimit=0 -c http.lowSpeedTime=999999 )
|
||||
|
||||
for ((i = 0; i < TOTAL; i += BATCH)); do
|
||||
idx=$((i + BATCH - 1))
|
||||
if (( idx >= TOTAL )); then idx=$((TOTAL - 1)); fi
|
||||
rev="${COMMITS[$idx]}"
|
||||
echo "▶ push → ${rev:0:8} ($((idx + 1))/$TOTAL)"
|
||||
GIT_TERMINAL_PROMPT=0 git "${git_cfg[@]}" push --force "$URL" "${rev}:refs/heads/${BRANCH}"
|
||||
done
|
||||
|
||||
echo "▶ final push ${BRANCH}"
|
||||
GIT_TERMINAL_PROMPT=0 git "${git_cfg[@]}" push --force "$URL" "${BRANCH}:refs/heads/${BRANCH}"
|
||||
echo "✓ 全量推送完成: ${SCHEME}://${HOST}/admin/Nexus/src/branch/${BRANCH}"
|
||||
Reference in New Issue
Block a user