Merge pull request #97 from Arenukvern/release-please--branches--main… #11
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Release | |
| on: | |
| push: | |
| tags: | |
| - 'v*' | |
| permissions: | |
| contents: write | |
| jobs: | |
| build: | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| include: | |
| - triple: darwin-arm64 | |
| runner: macos-14 | |
| - triple: linux-x64 | |
| runner: ubuntu-latest | |
| runs-on: ${{ matrix.runner }} | |
| timeout-minutes: 30 | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v4 | |
| - name: Setup Flutter SDK | |
| uses: subosito/flutter-action@v2 | |
| with: | |
| channel: stable | |
| cache: true | |
| - name: Install mcp_server_dart dependencies | |
| working-directory: mcp_server_dart | |
| run: flutter pub get | |
| - name: Assert release tag matches VERSION | |
| run: bash tool/release/assert_release_tag.sh "${{ github.ref_name }}" | |
| - name: Check release version sync | |
| run: bash tool/contracts/check_version_sync.sh | |
| - name: Build release artifacts | |
| env: | |
| VERSION: ${{ github.ref_name }} | |
| run: | | |
| VERSION_NO_PREFIX="${VERSION#v}" | |
| bash tool/release/build_release_artifacts.sh --version "$VERSION_NO_PREFIX" --triple "${{ matrix.triple }}" | |
| - name: Upload release tarball | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: release-${{ matrix.triple }} | |
| path: dist/release/flutter_mcp_*_${{ matrix.triple }}.tar.gz | |
| if-no-files-found: error | |
| publish: | |
| runs-on: ubuntu-latest | |
| needs: build | |
| timeout-minutes: 15 | |
| steps: | |
| - name: Download release tarballs | |
| uses: actions/download-artifact@v4 | |
| with: | |
| path: dist/release | |
| merge-multiple: true | |
| - name: Generate checksums | |
| run: | | |
| cd dist/release | |
| sha256sum *.tar.gz > checksums.txt | |
| # Release notes come from release-please (Release PR merge). This job | |
| # only attaches binaries — do not set body/body_path here. | |
| - name: Publish GitHub release assets | |
| uses: softprops/action-gh-release@v2 | |
| with: | |
| name: ${{ github.ref_name }} | |
| files: | | |
| dist/release/*.tar.gz | |
| dist/release/checksums.txt | |
| fail_on_unmatched_files: true |