name: build cli for all platforms on: push: tags: - '*' permissions: contents: write jobs: make-release: runs-on: ubuntu-latest steps: - uses: actions/create-release@latest env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} with: tag_name: ${{ github.ref }} release_name: ${{ github.ref }} build-all-for-all: runs-on: ubuntu-latest needs: - make-release strategy: matrix: goos: [linux, freebsd, darwin, windows] goarch: [arm, amd64, arm64, riscv64] exclude: - goarch: arm64 goos: windows - goarch: riscv64 goos: windows - goarch: riscv64 goos: darwin - goarch: arm goos: windows - goarch: arm goos: darwin - goarch: arm goos: freebsd steps: - uses: actions/checkout@v3 - uses: wangyoucao577/go-release-action@v1.40 with: github_token: ${{ secrets.GITHUB_TOKEN }} goos: ${{ matrix.goos }} goarch: ${{ matrix.goarch }} ldflags: -X main.version=${{ github.ref_name }} overwrite: true md5sum: false sha256sum: false compress_assets: false