name: CI on: push: branches: [main] pull_request: branches: [main] jobs: lint: name: Lint runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - uses: actions/setup-go@v5 with: go-version: "1.26" cache: true - name: golangci-lint uses: golangci/golangci-lint-action@v6 with: version: latest build: name: Build & Test strategy: fail-fast: false matrix: os: [ubuntu-latest, windows-latest, macos-latest] runs-on: ${{ matrix.os }} steps: - uses: actions/checkout@v4 - uses: actions/setup-go@v5 with: go-version: "1.26" cache: true - name: Build run: go build -v ./... - name: Vet run: go vet ./... - name: Test run: go test -v -race -count=1 ./... build-helper: name: Build Roslyn Helper runs-on: windows-latest steps: - uses: actions/checkout@v4 - name: Setup .NET uses: actions/setup-dotnet@v4 with: dotnet-version: "10.0.x" - name: Build helper working-directory: tools/roslyn-helper run: dotnet build src/RoslynHelper -c Release