Create release.yml
This commit is contained in:
48
.github/workflows/release.yml
vendored
Normal file
48
.github/workflows/release.yml
vendored
Normal file
@@ -0,0 +1,48 @@
|
||||
name: Release QuickWrt
|
||||
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- master
|
||||
|
||||
jobs:
|
||||
release:
|
||||
runs-on: self-hosted
|
||||
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v4
|
||||
|
||||
- name: Set up Git
|
||||
run: |
|
||||
git fetch --tags
|
||||
|
||||
- name: Get next version
|
||||
id: version
|
||||
run: |
|
||||
# 获取已有最新 tag,没有则默认 v2.0
|
||||
latest_tag=$(git tag --list "v*" | sort -V | tail -n1)
|
||||
if [ -z "$latest_tag" ]; then
|
||||
next_tag="v2.0"
|
||||
else
|
||||
base=${latest_tag#v}
|
||||
major=$(echo $base | cut -d. -f1)
|
||||
minor=$(echo $base | cut -d. -f2)
|
||||
next_minor=$((minor+1))
|
||||
next_tag="v${major}.${next_minor}"
|
||||
fi
|
||||
echo "next_tag=$next_tag" >> $GITHUB_ENV
|
||||
echo "Next version: $next_tag"
|
||||
|
||||
- name: Create archive
|
||||
run: |
|
||||
tar -czf QuickWrt.tar.gz --exclude=.git .
|
||||
|
||||
- name: Create Release
|
||||
uses: softprops/action-gh-release@v2
|
||||
with:
|
||||
tag_name: ${{ env.next_tag }}
|
||||
name: Release ${{ env.next_tag }}
|
||||
files: QuickWrt.tar.gz
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
Reference in New Issue
Block a user