feat: Support read session resumption (#7) #11
This file contains 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: CI | |
permissions: | |
contents: read | |
on: | |
pull_request: | |
push: | |
branches: | |
- main | |
env: | |
CLICOLOR: 1 | |
concurrency: | |
group: "${{ github.workflow }}-${{ github.ref }}" | |
cancel-in-progress: true | |
jobs: | |
ci: | |
permissions: | |
contents: none | |
name: CI | |
needs: [examples, test, golangci-lint, gen-lint] | |
runs-on: ubuntu-latest | |
if: always() | |
steps: | |
- name: Failed | |
run: exit 1 | |
if: contains(needs.*.result, 'failure') || contains(needs.*.result, 'cancelled') || contains(needs.*.result, 'skipped') | |
examples: | |
name: Build examples | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
submodules: true | |
- uses: actions/setup-go@v5 | |
with: | |
go-version: '1.23' | |
- uses: arduino/setup-task@v2 | |
with: | |
version: 3.40.x | |
- uses: arduino/setup-protoc@v3 | |
with: | |
version: 29.x | |
- name: Setup protoc | |
run: | | |
go install google.golang.org/protobuf/cmd/protoc-gen-go@latest | |
go install google.golang.org/grpc/cmd/protoc-gen-go-grpc@latest | |
- name: Build | |
run: | | |
for eg in `go list ./examples/... | sed 's|.*/||'`; do | |
echo "Building '$eg' example" | |
task example:build NAME=$eg | |
done | |
test: | |
name: Test | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
submodules: true | |
- uses: actions/setup-go@v5 | |
with: | |
go-version: '1.23' | |
- uses: arduino/setup-task@v2 | |
with: | |
version: 3.40.x | |
- uses: arduino/setup-protoc@v3 | |
with: | |
version: 29.x | |
- name: Setup protoc | |
run: | | |
go install google.golang.org/protobuf/cmd/protoc-gen-go@latest | |
go install google.golang.org/grpc/cmd/protoc-gen-go-grpc@latest | |
- name: Test | |
run: task test | |
golangci-lint: | |
name: GolangCI Lint | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
submodules: true | |
- uses: actions/setup-go@v5 | |
with: | |
go-version: '1.23' | |
- name: Lint | |
uses: golangci/golangci-lint-action@v6 | |
with: | |
version: v1.63 | |
gen-lint: | |
name: Code Generation Lint | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
submodules: true | |
- uses: actions/setup-go@v5 | |
with: | |
go-version: '1.23' | |
- uses: arduino/setup-task@v2 | |
with: | |
version: 3.40.x | |
- uses: arduino/setup-protoc@v3 | |
with: | |
version: 29.x | |
- name: Setup protoc | |
run: | | |
go install google.golang.org/protobuf/cmd/protoc-gen-go@latest | |
go install google.golang.org/grpc/cmd/protoc-gen-go-grpc@latest | |
- name: Lint | |
run: task lint:gen |