Files
clash-rules/.gitea/workflows/update-rules.yml
adminroot 0b65198917
Some checks failed
Download Clash Rules / download-rules (push) Has been cancelled
更新 .gitea/workflows/update-rules.yml
2025-09-11 22:53:20 -07:00

55 lines
2.7 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: Download Clash Rules
on:
schedule:
# 每天 UTC 2点执行 (北京时间10点)
- cron: '0 2 * * *'
workflow_dispatch:
push:
branches: [ main, master ]
jobs:
download-rules:
runs-on: ubuntu-latest
steps:
- name: 检出代码库
uses: actions/checkout@v4
with:
token: ${{ secrets.WORKFLOW_TOKEN }}
- name: 创建规则目录
run: mkdir -p ruleset
- name: 下载规则文件
run: |
# 下载所有规则文件
curl -L "https://cdn.jsdelivr.net/gh/Loyalsoldier/clash-rules@release/reject.txt" -o "ruleset/reject.txt"
curl -L "https://cdn.jsdelivr.net/gh/Loyalsoldier/clash-rules@release/icloud.txt" -o "ruleset/icloud.txt"
curl -L "https://cdn.jsdelivr.net/gh/Loyalsoldier/clash-rules@release/apple.txt" -o "ruleset/apple.txt"
curl -L "https://cdn.jsdelivr.net/gh/Loyalsoldier/clash-rules@release/google.txt" -o "ruleset/google.txt"
curl -L "https://cdn.jsdelivr.net/gh/Loyalsoldier/clash-rules@release/proxy.txt" -o "ruleset/proxy.txt"
curl -L "https://cdn.jsdelivr.net/gh/Loyalsoldier/clash-rules@release/direct.txt" -o "ruleset/direct.txt"
curl -L "https://cdn.jsdelivr.net/gh/Loyalsoldier/clash-rules@release/private.txt" -o "ruleset/private.txt"
curl -L "https://cdn.jsdelivr.net/gh/Loyalsoldier/clash-rules@release/gfw.txt" -o "ruleset/gfw.txt"
curl -L "https://cdn.jsdelivr.net/gh/Loyalsoldier/clash-rules@release/tld-not-cn.txt" -o "ruleset/tld-not-cn.txt"
curl -L "https://cdn.jsdelivr.net/gh/Loyalsoldier/clash-rules@release/telegramcidr.txt" -o "ruleset/telegramcidr.txt"
curl -L "https://cdn.jsdelivr.net/gh/Loyalsoldier/clash-rules@release/cncidr.txt" -o "ruleset/cncidr.txt"
curl -L "https://cdn.jsdelivr.net/gh/Loyalsoldier/clash-rules@release/lancidr.txt" -o "ruleset/lancidr.txt"
curl -L "https://cdn.jsdelivr.net/gh/Loyalsoldier/clash-rules@release/applications.txt" -o "ruleset/applications.txt"
- name: 检查下载结果
run: |
echo "=== 下载完成,文件列表 ==="
ls -la ruleset/
echo "=== 文件大小统计 ==="
du -h ruleset/*
# 方案1提交到仓库推荐
- name: 提交规则文件到仓库
run: |
git config --local user.email "action@github.com"
git config --local user.name "GitHub Action"
git add ruleset/
git diff --staged --quiet || git commit -m "Auto update clash rules - $(date +%Y-%m-%d)"
git push https://x-access-token:${{ secrets.WORKFLOW_TOKEN }}@${{ github.server_url }}/${{ github.repository }}.git HEAD:main