1
0
mirror of https://github.com/gfwlist/gfwlist.git synced 2026-03-31 06:13:58 +08:00
Files
gfwlist/.github/workflows/sendGFWList.yml
2026-03-21 18:47:52 +08:00

77 lines
2.5 KiB
YAML

name: send GFWList
on:
push:
paths:
- 'list.txt'
branches:
- master
workflow_dispatch:
jobs:
convert-and-push:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v6
with:
submodules: 'true'
fetch-depth: '0'
- name: Install dependencies
run: |
sudo apt-get update
sudo apt-get install -y file git openssl perl
- name: Sanity check.
run: |
for cmd in date file git openssl perl; do
command -v $cmd >/dev/null 2>&1 || { echo "Error: You must have $cmd command installed!"; exit 1; }
done
- name: update date and checksum
run: |
cp apollyon/* ./
perl addChecksum.pl list.txt || { echo "Error: Failed to update checksum"; exit 1; }
if [ "$(file -b list.txt | grep -o "ASCII text")" != "ASCII text" ]; then
echo "Error: list.txt invalid, please make sure:"
echo "1. there is no non-ASCII characters;"
echo "2. configure your text editor to use unix style line break."
exit 1
fi
echo "DATE=$(date)" >> $GITHUB_ENV
- name: convert to gfwlist.txt
run: |
openssl base64 -in list.txt | tr -d '\r' > gfwlist.txt
- name: Set up GPG keys (bocchi810)
if: github.actor == 'bocchi810'
id: import-gpg-bocchi810
uses: crazy-max/ghaction-import-gpg@v7
with:
gpg_private_key: ${{ secrets.GPG_KEY_BOCCHI810 }}
passphrase: ${{ secrets.GPG_PASS_BOCCHI810 }}
git_user_signingkey: true
git_commit_gpgsign: true
- name: save local changes to git & svn (bocchi810)
if: github.actor == 'bocchi810'
id: auto-commit-action-bocchi810
uses: stefanzweifel/git-auto-commit-action@v7
with:
commit_author: "${{ steps.import-gpg-bocchi810.outputs.name }} <${{ steps.import-gpg-bocchi810.outputs.email }}>"
commit_user_name: ${{ steps.import-gpg-bocchi810.outputs.name }}
commit_user_email: ${{ steps.import-gpg-bocchi810.outputs.email }}
commit_message: gfwlist edited ${{ env.DATE }}
file_pattern: 'gfwlist.txt'
- name: save local changes to git & svn
if: github.actor != 'bocchi810'
id: auto-commit-action
uses: stefanzweifel/git-auto-commit-action@v7
with:
commit_message: gfwlist edited ${{ env.DATE }}
file_pattern: 'gfwlist.txt'