name: bin_update on: # release: # types: [published] # push: # tags: # - 'v*' # branches: # - master schedule: - cron: 0 18 * * 6 # watch: # types: [started] workflow_dispatch: jobs: update: runs-on: ubuntu-latest steps: - name: Checkout ShellCrash uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4 with: repository: juewuy/ShellCrash fetch-depth: 1 - name: Apt Update env: DEBIAN_FRONTEND: noninteractive run: | sudo apt-get update sudo apt-get -y install unzip curl git tar - name: Update Dashboard run: | mkdir -p bin/dashboard mkdir -p bin/geodata cd bin/dashboard echo 下载官方面板 # curl -kfSL -o clashdb.zip https://github.com/Dreamacro/clash-dashboard/archive/gh-pages.zip echo 下载Meta面板 curl -kfSL -o meta_db.zip https://github.com/MetaCubeX/Razord-meta/archive/gh-pages.zip echo 下载yacd面板 curl -kfSL -o yacd.zip https://github.com/haishanh/yacd/archive/gh-pages.zip echo 下载meta魔改yacd面板 curl -kfSL -o meta_yacd.zip https://github.com/MetaCubeX/Yacd-meta/archive/gh-pages.zip echo 下载meta-xd面板 curl -kfSL -o meta_xd.zip https://github.com/MetaCubeX/metacubexd/archive/gh-pages.zip echo 解压缩 # unzip -o clashdb.zip > /dev/null unzip -o yacd.zip > /dev/null # cd clash-dashboard-gh-pages # tar -zcvf clashdb.tar.gz * > /dev/null # mv -f clashdb.tar.gz ../ # cd .. cd yacd-gh-pages echo yacd特殊处理 find -name '*.map' | xargs rm -rf rm -rf report.html tar -zcvf yacd.tar.gz * > /dev/null mv -f yacd.tar.gz ../ cd .. echo 解压缩meta unzip -o meta_db.zip > /dev/null unzip -o meta_yacd.zip > /dev/null cd Razord-meta-gh-pages tar -zcvf meta_db.tar.gz * > /dev/null mv -f meta_db.tar.gz ../ cd .. cd Yacd-meta-gh-pages echo yacd特殊处理 find -name '*.map' | xargs rm -rf rm -rf report.html tar -zcvf meta_yacd.tar.gz * > /dev/null mv -f meta_yacd.tar.gz ../ cd .. echo 解压缩meta-xd unzip -o meta_xd.zip > /dev/null cd metacubexd-gh-pages echo 删除字体文件 find -name '*.ttf' | xargs rm -rf tar -zcvf meta_xd.tar.gz * > /dev/null mv -f meta_xd.tar.gz ../ cd .. rm -rf clashdb.zip rm -rf yacd.zip rm -rf meta_db.zip rm -rf meta_yacd.zip rm -rf meta_xd.zip rm -rf clash-dashboard-gh-pages rm -rf yacd-gh-pages rm -rf Razord-meta-gh-pages rm -rf Yacd-meta-gh-pages rm -rf metacubexd-gh-pages echo 面板更新完成! - name: Update GeoIP run: | cd bin source version curl -kfSL -o geodata/Country.mmdb https://raw.githubusercontent.com/alecthw/mmdb_china_ip_list/release/Country.mmdb curl -kfSL -o geodata/cn_mini.mmdb https://raw.githubusercontent.com/Hackl0us/GeoIP2-CN/release/Country.mmdb curl -kfSL -o geodata/china_ip_list.txt https://raw.githubusercontent.com/ChanthMiao/China-IPv4-List/release/cn.txt curl -kfSL -o geodata/china_ipv6_list.txt https://raw.githubusercontent.com/ChanthMiao/China-IPv6-List/release/cn6.txt curl -kfSL -o geodata/geosite.dat https://raw.githubusercontent.com/Loyalsoldier/v2ray-rules-dat/release/geosite.dat curl -kfSL -o geodata/geoip_cn.db https://github.com/lyc8503/sing-box-rules/releases/latest/download/geoip-cn.db curl -kfSL -o geodata/geosite_cn.db https://github.com/SagerNet/sing-geosite/releases/latest/download/geosite-cn.db curl -kfSL -o geodata/srs_geoip_cn.srs https://raw.githubusercontent.com/SagerNet/sing-geoip/rule-set/geoip-cn.srs curl -kfSL -o geodata/srs_geosite_cn.srs https://raw.githubusercontent.com/SagerNet/sing-geosite/rule-set/geosite-geolocation-cn.srs curl -kfSL -o fix/ca-certificates.crt https://raw.githubusercontent.com/P3TERX/ca-certificates.crt/download/ca-certificates.crt sed -i "s/GeoIP_v=.*/GeoIP_v=$(date '+%Y%m%d)/" version #修改版本号 echo 数据库及根证书文件更新完成! - name: Commit and push run: | git config --global user.email "juewuy@gmail.com" && git config --global user.name "Bot" git add . && git commit -m "自动更新最新Dashboard、地址库、根证书" || exit 0 git push - name: Cleanup Workflow uses: Mattraks/delete-workflow-runs@main with: retain_days: 1 keep_minimum_runs: 2