diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml new file mode 100644 index 00000000..9dd8d1db --- /dev/null +++ b/.github/workflows/ci.yml @@ -0,0 +1,62 @@ +name: CI + +on: + pull_request: + push: + branches: + - main + +concurrency: + group: ci-${{ github.ref }} + cancel-in-progress: true + +jobs: + flutter: + name: Flutter analyze & test + runs-on: ubuntu-latest + + steps: + - name: Checkout repository + uses: actions/checkout@v6 + + - name: Setup Flutter + uses: subosito/flutter-action@v2 + with: + # Keep in sync with .fvmrc + flutter-version: "3.41.5" + channel: "stable" + cache: true + + - name: Get Flutter dependencies + run: flutter pub get + + - name: Analyze + run: flutter analyze + + - name: Run tests + run: flutter test + + go: + name: Go vet & test + runs-on: ubuntu-latest + + defaults: + run: + working-directory: go_backend + + steps: + - name: Checkout repository + uses: actions/checkout@v6 + + - name: Setup Go + uses: actions/setup-go@v6 + with: + # Keep in sync with release.yml + go-version: "1.25.8" + cache-dependency-path: go_backend/go.sum + + - name: Vet + run: go vet ./... + + - name: Run tests + run: go test ./...