From 5b972514aabd4cc6db993b088b0b4a5db2a90647 Mon Sep 17 00:00:00 2001 From: Chang lue Tsen Date: Fri, 25 Apr 2025 17:45:58 +0900 Subject: [PATCH] fix: update release workflow --- .github/workflows/release.yml | 98 ++++++----------------------------- 1 file changed, 16 insertions(+), 82 deletions(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 21ffb74..e209422 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -1,5 +1,4 @@ -name: Build and Publish Docker Image and Release - +name: Release on: push: tags: @@ -97,91 +96,26 @@ jobs: releases-matrix: name: Release ppanel-server binary runs-on: ubuntu-latest - needs: release-notes + needs: release-notes # wait for release-notes job to finish strategy: matrix: + # build and publish in parallel: linux/386, linux/amd64, linux/arm64, + # windows/386, windows/amd64, windows/arm64, darwin/amd64, darwin/arm64 goos: [ linux, windows, darwin ] goarch: [ '386', amd64, arm64 ] exclude: - - goos: darwin - goarch: '386' - include: - - goos: linux - goarch: arm - goarm: 5 - target: linux-armv5 - - goos: linux - goarch: arm - goarm: 6 - target: linux-armv6 - - goos: linux - goarch: arm - goarm: 7 - target: linux-armv7 - - goos: windows - goarch: arm - goarm: 7 - target: windows-armv7 - - goos: linux - goarch: amd64 - goamd64: v3 - target: linux-amd64-v3 - - goos: windows - goarch: amd64 - goamd64: v3 - target: windows-amd64-v3 - - goos: darwin - goarch: amd64 - goamd64: v3 - target: darwin-amd64-v3 + - goarch: '386' + goos: darwin steps: - - name: Checkout repository - uses: actions/checkout@v4 - - - name: Set up Go - uses: actions/setup-go@v5 + - uses: actions/checkout@v4 + - uses: wangyoucao577/go-release-action@v1 with: - go-version: '1.21' - - - name: Build binary with Makefile - env: - GOOS: ${{ matrix.goos }} - GOARCH: ${{ matrix.goarch }} - GOARM: ${{ matrix.goarm }} - GOMIPS: ${{ matrix.gomips }} - run: | - # Use default target for non-special architectures, otherwise use matrix.target - TARGET=${{ matrix.target != '' && matrix.target || format('{0}-{1}', matrix.goos, matrix.goarch) }} - make BINDIR=bin $TARGET - mv bin/ppanel-server-$TARGET* ppanel-server-$TARGET - - - name: Upload release asset - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ github.event.release.upload_url }} - asset_path: ppanel-server-${{ matrix.target != '' && matrix.target || format('{0}-{1}', matrix.goos, matrix.goarch) }} - asset_name: ppanel-server-${{ matrix.target != '' && matrix.target || format('{0}-{1}', matrix.goos, matrix.goarch) }}${{ matrix.goos == 'windows' && '.exe' || '' }} - asset_content_type: application/octet-stream - - - name: Upload additional files - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ github.event.release.upload_url }} - asset_path: etc/ppanel.yaml - asset_name: ppanel.yaml - asset_content_type: text/yaml - - - name: Upload LICENSE - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ github.event.release.upload_url }} - asset_path: LICENSE - asset_name: LICENSE - asset_content_type: text/plain \ No newline at end of file + github_token: ${{ secrets.GITHUB_TOKEN }} + goos: ${{ matrix.goos }} + goarch: ${{ matrix.goarch }} + asset_name: "ppanel-server-${{ matrix.goos }}-${{ matrix.goarch }}" + goversion: "https://dl.google.com/go/go1.23.3.linux-amd64.tar.gz" + project_path: "." + binary_name: "ppanel-server" + extra_files: LICENSE etc