Skip to content

Eliminate per-request struct allocation in step execution #17

Eliminate per-request struct allocation in step execution

Eliminate per-request struct allocation in step execution #17

Workflow file for this run

name: Release Binaries
on:
push:
tags:
- 'v*'
jobs:
test:
runs-on: ubuntu-latest
permissions:
contents: read
steps:
- name: Checkout
uses: actions/checkout@v6
with:
fetch-depth: 0
- name: Set up Go
uses: actions/setup-go@v6
with:
go-version: '1.25'
- name: Run CI
run: make ci
- name: Build with GoReleaser
uses: goreleaser/goreleaser-action@v7
with:
distribution: goreleaser
version: '~> v2'
args: release --skip=publish --clean
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Locate binary
id: binary
run: |
BINARY=$(find dist -type f -name "sql-proxy_linux_amd64_*" ! -name "*.exe" | head -1)
echo "path=$BINARY" >> $GITHUB_OUTPUT
- name: Smoke test - version
run: ${{ steps.binary.outputs.path }} -version
- name: Smoke test - validate config
run: ${{ steps.binary.outputs.path }} -validate -config testdata/config.ci.yaml
release:
needs: test
runs-on: ubuntu-latest
permissions:
contents: write
steps:
- name: Checkout
uses: actions/checkout@v6
with:
fetch-depth: 0
- name: Set up Go
uses: actions/setup-go@v6
with:
go-version: '1.25'
- name: Run GoReleaser
uses: goreleaser/goreleaser-action@v7
with:
distribution: goreleaser
version: '~> v2'
args: release --clean
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}