48 lines
2.1 KiB
YAML
48 lines
2.1 KiB
YAML
name: Probe
|
||
|
||
# 一次性探测 job:确认 runner 的网络路径与宿主机素材位置。
|
||
# 目的:
|
||
# 1. 构建卡在 `git fetch full-assets`(650MB),要判断是 runner 访问 Gitea 走了公网
|
||
# 绕行(改 127.0.0.1 就能解),还是整机带宽就这么点。
|
||
# 2. 若宿主机上已有现成的 assets 目录,构建时直接 cp,完全不必下载。
|
||
# 用完即可删除本文件。
|
||
|
||
on:
|
||
workflow_dispatch:
|
||
|
||
jobs:
|
||
probe:
|
||
runs-on: ubuntu-latest
|
||
steps:
|
||
- name: 网络路径
|
||
run: |
|
||
echo "=== 三种地址访问 Gitea 的测速(各取 2MB archive 样本)==="
|
||
for u in "http://127.0.0.1:3000" "http://172.17.0.1:3000" "http://123.206.124.151:3000"; do
|
||
printf '%-32s ' "$u"
|
||
curl -s -m 10 -r 0-2000000 -o /dev/null \
|
||
-w "speed=%{speed_download} B/s got=%{size_download}\n" \
|
||
"$u/mtfyun/dsh-pet-floating/archive/main.tar.gz" 2>/dev/null || echo "不可达"
|
||
done
|
||
|
||
- name: 运行身份与文件系统
|
||
run: |
|
||
echo "=== 身份 ==="
|
||
uname -a; whoami; echo "PWD=$(pwd)"; echo "RUNNER_TEMP=$RUNNER_TEMP"
|
||
echo
|
||
echo "=== 是否在容器里 ==="
|
||
[ -f /.dockerenv ] && echo "在 Docker 容器内" || echo "直接在宿主机上(host 模式)"
|
||
echo
|
||
echo "=== 构建环境 ==="
|
||
echo "ANDROID_HOME=${ANDROID_HOME:-<未设置>}"
|
||
for p in /opt/jdk17 /opt/android-sdk /opt/gradle /opt/act_runner /root/share/DSHBox; do
|
||
[ -e "$p" ] && echo " ✓ $p ($(du -sh "$p" 2>/dev/null | cut -f1))" || echo " ✗ $p"
|
||
done
|
||
java -version 2>&1 | head -2
|
||
echo
|
||
echo "=== 宿主机上是否已有素材目录 ==="
|
||
for d in /opt /root /home /srv /data /var/lib; do
|
||
[ -d "$d" ] && find "$d" -maxdepth 4 -type d \( -name assets_hq -o -name assets_small -o -name assets_net \) 2>/dev/null | head -6
|
||
done
|
||
echo "--- 可能的完整仓库副本 ---"
|
||
find / -maxdepth 5 -type d -name "dsh-pet-floating" 2>/dev/null | grep -v "$(pwd)" | head -5
|