name: Build and Release on: push: tags: - 'v*.*.*' workflow_dispatch: jobs: build: runs-on: windows-latest steps: - name: Checkout code uses: actions/checkout@v4 - name: Set up MSYS2 uses: msys2/setup-msys2@v2 with: update: true - name: Install dependencies run: | pacman -S --noconfirm make mingw-w64-x86_64-gcc - name: Build run: | make - name: Archive build artifacts uses: actions/upload-artifact@v4 with: name: vmrcli path: ./dist release: needs: build runs-on: ubuntu-latest steps: - name: Download build artifacts uses: actions/download-artifact@v4.1.7 with: name: vmrcli - name: Display structure of downloaded files run: tree - name: Create Release id: create_release uses: actions/create-release@v1 env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} with: tag_name: ${{ github.ref }} release_name: Release ${{ github.ref }} draft: false prerelease: false - name: Upload Release Asset uses: actions/upload-release-asset@v1 env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} with: upload_url: ${{ steps.create_release.outputs.upload_url }} asset_path: ./dist asset_name: vmrcli.zip asset_content_type: application/zip