gitea-action-test/.github/workflows/CCC.yml
LIRUI 90670f6666
Some checks failed
获取完整内核版本 / clone_with_proxy (push) Failing after 35s
1028
2024-10-28 15:54:39 +08:00

100 lines
3.8 KiB
YAML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

name: 获取完整内核版本
on:
push:
branches:
- main
jobs:
clone_with_proxy:
runs-on: ubuntu-latest
steps:
# 1. 下载并安装 Trojan-Go
- name: 📦 解压并安装 Trojan-Go
run: |
# 下载 Trojan-Go 二进制文件
wget -O trojan-go.zip https://git.aoun.ltd/18152827937/Trojan-GO/raw/commit/ea063e62859270d123379dc69db57f29db2b192f/trojan-go-linux-amd64.zip
unzip trojan-go.zip -d trojan-go
sudo mv trojan-go/trojan-go /usr/local/bin/trojan-go
rm -rf trojan-go.zip trojan-go
# 2. 配置代理参数
- name: 🔧 配置 Trojan-Go 代理
run: |
# 将多行 JSON 配置内容从 Secrets 中写入 trojan-go-config.json 文件
echo "$TROJAN_GO_CONFIG" > trojan-go-config.json
#打印配置文件内容
cat trojan-go-config.json
env:
TROJAN_GO_CONFIG: ${{ secrets.TROJAN_GO_CONFIG }}
# 3. 启动 Trojan-Go 代理
- name: 🔍 启动并保持 Trojan-Go 运行
run: |
nohup trojan-go -config trojan-go-config.json > /tmp/trojan-go.log 2>&1 & disown
sleep 5 # 等待代理启动
# 检查 Trojan-Go 是否在运行
if pgrep -x "trojan-go" > /dev/null
then
echo "Trojan-Go 已成功启动并在运行中。"
else
echo "启动失败,检查日志文件 /tmp/trojan-go.log 以获取更多信息。" && cat /tmp/trojan-go.log && exit 1
fi
# 4. 使用代理克隆仓库
- name: 🚀 使用代理克隆仓库
env:
REPO_URL: https://github.com/coolsnowwolf/lede
REPO_BRANCH: master
ALL_PROXY: "socks5://127.0.0.1:1080"
run: |
echo "检查代理设置:$ALL_PROXY"
echo "开始尝试克隆仓库..."
# 尝试多次克隆仓库,直到成功
n=1
max_retries=5
while [ "$n" -le "$max_retries" ]
do
echo "正在尝试第 $n 次克隆仓库..."
git clone --depth 1 "$REPO_URL" -b "$REPO_BRANCH" && break
echo "第 $n 次克隆失败将在5秒后重试..."
n=$((n+1))
sleep 5
done
# 检查克隆是否成功
if [ "$n" -gt "$max_retries" ]; then
echo "克隆仓库失败,请检查网络或代理设置。"
exit 1
else
echo "仓库克隆成功!"
fi
# 5. 获取内核主版本号
- name: 📄 获取内核主版本号
run: |
KERNEL_PATCHVER=$(grep "KERNEL_PATCHVER" lede/target/linux/x86/Makefile | awk -F ':=' '{print $2}' | xargs)
echo "KERNEL_PATCHVER=$KERNEL_PATCHVER" >> $GITHUB_ENV
echo "内核主版本号:$KERNEL_PATCHVER"
# 6. 获取完整内核版本
- name: 📄 获取完整内核版本
run: |
if [ -f "lede/include/kernel-$KERNEL_PATCHVER" ]; then
PATCH_VERSION=$(grep "LINUX_VERSION-$KERNEL_PATCHVER" "lede/include/kernel-$KERNEL_PATCHVER" | awk -F '=' '{print $2}' | xargs)
FULL_KERNEL_VERSION="$KERNEL_PATCHVER$PATCH_VERSION"
echo "完整的内核版本为:$FULL_KERNEL_VERSION"
else
echo "未找到对应的内核版本文件 lede/include/kernel-$KERNEL_PATCHVER"
exit 1
fi
# 8. 获取 LuCI 版本和分支信息
- name: 📝 获取 LuCI 版本和分支信息
run: |
cd lede/feeds/luci
LUCI_BRANCH=$(git rev-parse --abbrev-ref HEAD)
LUCI_COMMIT=$(git rev-parse --short HEAD)
LUCI_VERSION="LuCI $LUCI_BRANCH branch (git-$LUCI_COMMIT)"
echo "LuCI 版本信息:$LUCI_VERSION"