name: release on: push: tags: - v* - default env: GITHUB_TOKEN: ${{ github.token }} jobs: release: name: Build on Push Tag 🚀 runs-on: ubuntu-latest steps: - name: Checkout Code id: checkout uses: actions/checkout@v4 - name: Setup Build Tools run: | sudo apt-get update sudo apt-get install -y gcc make - name: Setup NDK uses: nttld/setup-ndk@v1 id: setup-ndk with: ndk-version: r26d add-to-path: false - name: Setup Go Environment uses: actions/setup-go@master - name: Download Go Modules run: go mod tidy - name: Cache Downloaded Modules uses: actions/cache@master with: path: | ~/.cache/go-build ~/go/pkg/mod key: ${{ runner.os }}-go-${{ matrix.goos }}-${{ matrix.goarch }}-${{ hashFiles('**/go.sum') }} - name: Build Libraries env: NDK_TOOLCHAIN: ${{ steps.setup-ndk.outputs.ndk-path }} BUILD_MACHINE: linux run: make - name: Upload Binaries to Release uses: svenstaro/upload-release-action@v2 with: repo_token: ${{ secrets.GITHUB_TOKEN }} file: build/*.gz tag: ${{ github.ref }} overwrite: true file_glob: true