on: push: branches: - master pull_request: branches: - master workflow_dispatch: jobs: lint: name: Lint runs-on: self-hosted-ghr steps: - uses: actions/checkout@v4 with: submodules: false # Cache build tools to avoid downloading them each time - uses: actions/cache@v4 with: path: build/cache key: ${{ runner.os }}-build-tools-cache-${{ hashFiles('build/checksums.txt') }} - name: Set up Go uses: actions/setup-go@v5 with: go-version: 1.25 cache: false - name: Run linters run: | go run build/ci.go lint go run build/ci.go check_generate go run build/ci.go check_baddeps test: name: Test needs: lint runs-on: self-hosted-ghr strategy: matrix: go: - '1.25' - '1.24' steps: - uses: actions/checkout@v4 with: submodules: true - name: Set up Go uses: actions/setup-go@v5 with: go-version: ${{ matrix.go }} cache: false - name: Run tests run: go run build/ci.go test