name: CI on: push: { branches: [ main ] } pull_request: release: { types: [ published ] } jobs: fmt: name: Fmt runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - uses: actions/setup-go@v5 with: { go-version: '1.22' } - uses: oven-sh/setup-bun@v1 - run: make build-ui - run: make install - run: make fmt - run: git diff --exit-code lint: name: Lint runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - uses: actions/setup-go@v5 with: { go-version: '1.22' } - uses: oven-sh/setup-bun@v1 - run: make build-ui - uses: golangci/golangci-lint-action@v6 with: { version: 'v1.59' } test: name: Test runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - uses: actions/setup-go@v5 with: { go-version: '1.22' } - uses: oven-sh/setup-bun@v1 - run: make build-ui - run: make test - run: make test-coverage - uses: codecov/codecov-action@v4 with: files: ./coverage.out token: ${{ secrets.CODECOV_TOKEN }}