diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml new file mode 100644 index 0000000..fbae97f --- /dev/null +++ b/.github/workflows/release.yml @@ -0,0 +1,63 @@ +# This workflow will build a golang project +# For more information see: https://docs.github.com/en/actions/automating-builds-and-tests/building-and-testing-go + +name: Release + +on: + push: + tags: + - 'v*.*.*' + workflow_dispatch: + +jobs: + build: + runs-on: ubuntu-latest + steps: + - name: Checkout + uses: actions/checkout@v4 + + - name: Setup Go + uses: actions/setup-go@v5 + with: + go-version: '1.24.x' + + - name: Install gf CLI + run: | + go install github.com/gogf/gf/cmd/gf@latest + echo "$(go env GOPATH)/bin" >> $GITHUB_PATH + + - name: Verify gf + run: gf -v + + - name: Build with gf + run: gf build -ew -v "${{ github.ref_name }}" + + - name: Upload build artifacts + uses: actions/upload-artifact@v4 + with: + name: uploads3-${{ github.ref_name }} + path: | + bin/** + + release: + needs: build + runs-on: ubuntu-latest + steps: + - name: Checkout + uses: actions/checkout@v4 + + - name: Download artifacts + uses: actions/download-artifact@v4 + with: + name: uploads3-${{ github.ref_name }} + path: bin + + - name: Create GitHub Release + uses: softprops/action-gh-release@v1 + with: + tag_name: ${{ github.ref_name }} + name: ${{ github.ref_name }} + draft: false + prerelease: false + files: | + bin/**