Skip to content

Allow Protobuf v5 dependency (#102) #325

Allow Protobuf v5 dependency (#102)

Allow Protobuf v5 dependency (#102) #325

Workflow file for this run

name: CI
on: [push, pull_request]
jobs:
build:
# Prevent duplicate builds on internal PRs.
if: github.event_name == 'push' || github.event.pull_request.head.repo.full_name != github.repository
runs-on: ubuntu-latest
strategy:
matrix:
# Test compatible SDK and protobuf version combinations
# protobuf 3.1.0: SDK >= 2.19
# protobuf 4.0.0: SDK >= 3.3
# protobuf 4.1.0: SDK >= 3.6
# protobuf 4.2.0+: SDK >= 3.7
# protobuf 5.0.0+: SDK >= 3.7
include:
# Test older protobuf versions with SDK 3.4
- sdk: "3.4"
protobuf: "3.1.0"
- sdk: "3.4"
protobuf: "4.0.0"
# Test latest protobuf versions with SDK 3.7+ (stable and beta)
- sdk: stable
protobuf: "3.1.0"
- sdk: stable
protobuf: "4.0.0"
- sdk: stable
protobuf: "4.2.0"
- sdk: stable
protobuf: "5.0.0"
- sdk: beta
protobuf: "3.1.0"
- sdk: beta
protobuf: "4.0.0"
- sdk: beta
protobuf: "4.2.0"
- sdk: beta
protobuf: "5.0.0"
steps:
- uses: actions/checkout@v4
- uses: dart-lang/setup-dart@v1
with:
sdk: ${{ matrix.sdk }}
- name: Install dependencies
run: dart pub get
- name: Override protobuf version
run: dart pub add protobuf:${{ matrix.protobuf }}
- name: Install coveralls
run: sudo gem install coveralls-lcov
- name: Start Centrifugo
run: docker run -d -p 8000:8000 -e CENTRIFUGO_CHANNEL_WITHOUT_NAMESPACE_DELTA_PUBLISH=true -e CENTRIFUGO_CHANNEL_WITHOUT_NAMESPACE_ALLOWED_DELTA_TYPES="fossil" -e CENTRIFUGO_CHANNEL_WITHOUT_NAMESPACE_HISTORY_SIZE="100" -e CENTRIFUGO_CHANNEL_WITHOUT_NAMESPACE_HISTORY_TTL="300s" -e CENTRIFUGO_CHANNEL_WITHOUT_NAMESPACE_FORCE_RECOVERY="true" centrifugo/centrifugo:v6 centrifugo --client.insecure
- name: Run tests
run: bash tool/test.sh