feat: enable Go 1.26 runtime/secret for forward secrecy of key shares #24
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*' | |
| workflow_dispatch: | |
| inputs: | |
| tag: | |
| description: 'Release tag (e.g., v1.0.0)' | |
| required: true | |
| type: string | |
| env: | |
| GO_VERSION: '1.26.0' | |
| permissions: | |
| contents: write | |
| packages: write | |
| id-token: write | |
| jobs: | |
| goreleaser: | |
| name: GoReleaser | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout code | |
| uses: actions/checkout@v4 | |
| with: | |
| fetch-depth: 0 | |
| - name: Fetch all tags | |
| run: git fetch --force --tags | |
| - name: Set up Go | |
| uses: actions/setup-go@v5 | |
| with: | |
| go-version: ${{ env.GO_VERSION }} | |
| cache: true | |
| - name: Set up QEMU | |
| uses: docker/setup-qemu-action@v3 | |
| - name: Set up Docker Buildx | |
| uses: docker/setup-buildx-action@v3 | |
| - name: Login to Docker Hub | |
| uses: docker/login-action@v3 | |
| with: | |
| username: ${{ secrets.DOCKERHUB_USERNAME }} | |
| password: ${{ secrets.DOCKERHUB_TOKEN }} | |
| - name: Login to GitHub Container Registry | |
| uses: docker/login-action@v3 | |
| with: | |
| registry: ghcr.io | |
| username: ${{ github.actor }} | |
| password: ${{ secrets.GITHUB_TOKEN }} | |
| - name: Run GoReleaser | |
| uses: goreleaser/goreleaser-action@v6 | |
| with: | |
| distribution: goreleaser | |
| version: latest | |
| args: release --clean | |
| env: | |
| GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
| - name: Upload artifacts | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: release-artifacts | |
| path: dist/ | |
| create-release-notes: | |
| name: Create Release Notes | |
| runs-on: ubuntu-latest | |
| needs: goreleaser | |
| steps: | |
| - name: Checkout code | |
| uses: actions/checkout@v4 | |
| with: | |
| fetch-depth: 0 | |
| - name: Generate changelog | |
| id: changelog | |
| uses: mikepenz/release-changelog-builder-action@v4 | |
| with: | |
| configuration: ".github/changelog-config.json" | |
| env: | |
| GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
| - name: Update release | |
| uses: softprops/action-gh-release@v1 | |
| with: | |
| body: | | |
| ## 🎉 Lux MPC Release | |
| ### ✨ What's New | |
| ${{ steps.changelog.outputs.changelog }} | |
| ### 🔧 Threshold Signing Integration | |
| - **CMP/CGGMP21 Protocol**: Full ECDSA threshold signing support for Bitcoin, Ethereum, and other ECDSA chains | |
| - **FROST Protocol**: EdDSA and Schnorr signature support for Solana, Cardano, and Bitcoin Taproot | |
| - **Unified API**: Single interface for all threshold signature schemes | |
| - **Production Ready**: All tests passing, security scanned, and optimized | |
| ### 📦 Installation | |
| #### Binary | |
| Download the appropriate binary for your platform from the assets below. | |
| #### Docker | |
| ```bash | |
| docker pull luxfi/mpc:${{ github.ref_name }} | |
| docker pull ghcr.io/${{ github.repository }}:${{ github.ref_name }} | |
| ``` | |
| #### Go Install | |
| ```bash | |
| go install github.com/luxfi/mpc/cmd/mpcd@${{ github.ref_name }} | |
| go install github.com/luxfi/mpc/cmd/lux-mpc-cli@${{ github.ref_name }} | |
| ``` | |
| ### 🔐 Security | |
| - All dependencies updated | |
| - Security scans passed | |
| - SBOM included in release artifacts | |
| ### 📝 Documentation | |
| See the [README](https://github.com/${{ github.repository }}/blob/${{ github.ref_name }}/README.md) for detailed usage instructions. | |
| draft: false | |
| prerelease: false | |
| env: | |
| GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} |