Skip to content

Commit

Permalink
feat:添加发布工作流
Browse files Browse the repository at this point in the history
  • Loading branch information
zwtesttt committed May 29, 2024
1 parent 068cac6 commit e03f385
Showing 1 changed file with 65 additions and 0 deletions.
65 changes: 65 additions & 0 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,65 @@
name: Release Coss Cli

on:
push:
tags:
- 'v*.*.*' # 只在 tag push 时触发工作流

jobs:
build-and-release:
runs-on: ubuntu-latest
strategy:
matrix:
platform: [ linux, windows, darwin ]
arch: [ amd64 ]
steps:
- name: Checkout code
uses: actions/checkout@v3

- name: Set up Go
uses: actions/setup-go@v4
with:
go-version: 1.22

- name: Set environment variables
run: |
echo "GOOS=${{ matrix.platform }}" >> $GITHUB_ENV
echo "GOARCH=${{ matrix.arch }}" >> $GITHUB_ENV
if [ "${{ matrix.platform }}" = "windows" ]; then
echo "EXT=.exe" >> $GITHUB_ENV
else
echo "EXT=" >> $GITHUB_ENV
fi
- name: Build
run: make build
env:
GO: go
VERSION: ${{ github.ref_name }}
- name: Upload Build Artifacts
uses: actions/upload-artifact@v3
with:
name: ${{ matrix.platform }}-${{ matrix.arch }}-build
path: build/*-${{ matrix.platform }}-${{ matrix.arch }}-${{ github.ref_name }}*

create-release:
needs: build-and-release
runs-on: ubuntu-latest
if: startsWith(github.ref, 'refs/tags/')

steps:
- name: Checkout code
uses: actions/checkout@v3

- name: Download Build Artifacts
uses: actions/download-artifact@v3
with:
name: ${{ matrix.platform }}-${{ matrix.arch }}-build
path: build

- name: Create GitHub Release
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
TAG=${GITHUB_REF/refs\/tags\//}
gh release create "$TAG" build/* --title "$TAG" --notes "Release version $TAG"

0 comments on commit e03f385

Please sign in to comment.