59 lines
1.7 KiB
YAML
59 lines
1.7 KiB
YAML
name: Auto Generate Release
|
|
|
|
on:
|
|
push:
|
|
paths:
|
|
- 'gfw.pac'
|
|
workflow_dispatch:
|
|
|
|
jobs:
|
|
generate-release:
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
|
- name: Checkout repository
|
|
uses: actions/checkout@v4
|
|
env:
|
|
GH_TOKEN: ${{ secrets.PERSONAL_TOKEN }}
|
|
with:
|
|
fetch-depth: 0
|
|
|
|
- name: Set up Git
|
|
run: |
|
|
git config --global user.name "GitHub Actions"
|
|
git config --global user.email "actions@github.com"
|
|
|
|
- name: Get commit count for today
|
|
id: commit_count
|
|
env:
|
|
GH_TOKEN: ${{ secrets.PERSONAL_TOKEN }}
|
|
run: |
|
|
today=$(date +%Y%m%d)
|
|
commit_count=$(TZ=Asia/Shanghai git log --date=local --since="$today 00:00:00" --until="$today 23:59:59" --pretty=format: --name-only | grep -c '^gfw.pac$')
|
|
echo "COMMIT_COUNT=$commit_count" >> $GITHUB_ENV
|
|
echo "RELEASE_NAME=v$(TZ='Asia/Shanghai' date +%Y%m%d).$commit_count" >> $GITHUB_ENV
|
|
|
|
- name: Create Tag
|
|
id: create_tag
|
|
env:
|
|
GH_TOKEN: ${{ secrets.PERSONAL_TOKEN }}
|
|
run: |
|
|
git tag "${{ env.RELEASE_NAME }}"
|
|
git push origin ${{ env.RELEASE_NAME }}
|
|
|
|
- name: Create Release
|
|
id: create_release
|
|
uses: softprops/action-gh-release@v2
|
|
env:
|
|
GH_TOKEN: ${{ secrets.PERSONAL_TOKEN }}
|
|
with:
|
|
tag_name: "${{ env.RELEASE_NAME }}"
|
|
name: "${{ env.RELEASE_NAME }}"
|
|
body: "Automatically generated release for pac file update"
|
|
draft: false
|
|
prerelease: false
|
|
files: gfw.pac
|
|
|
|
- name: Verify Release
|
|
run: |
|
|
echo "Release created with name ${{ env.RELEASE_NAME }}" |