mirror of
https://github.com/juewuy/ShellCrash.git
synced 2024-11-16 03:32:34 +08:00
137 lines
5.0 KiB
YAML
137 lines
5.0 KiB
YAML
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 certificate
|
|
run: |
|
|
wget https://raw.githubusercontent.com/curl/curl/master/scripts/mk-ca-bundle.pl
|
|
chmod +x ./mk-ca-bundle.pl
|
|
./mk-ca-bundle.pl
|
|
rm -f mk-ca-bundle.pl certdata.txt
|
|
|
|
- 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
|
|
mv -f ../ca-bundle.crt ./fix/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 "github-actions[bot]@users.noreply.github.com" && git config --global user.name "github-actions[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
|