name: Go on: push: branches: [ master,release-*,v2,feature/** ] pull_request: branches: [ master,release-*,v2,feature/** ] jobs: golangci: strategy: matrix: go-version: [ '1.16','1.17','1.18','1.19','1.20','1.21.4' ] name: golangci-lint runs-on: ubuntu-latest steps: - name: Setup Golang ${{ matrix.go-version }} uses: actions/setup-go@v4 with: go-version: ${{ matrix.go-version }} - name: Checkout uses: actions/checkout@v3 - name: golangci-lint uses: golangci/golangci-lint-action@v3 with: # Required: the version of golangci-lint is required and must be specified without patch version: we always use the latest patch version. version: v1.52.2 build: name: Test runs-on: ubuntu-latest services: redis: image: redis ports: - 6379:6379 options: --entrypoint redis-server memcached: image: memcached ports: - 11211:11211 # strategy set strategy: matrix: go: [ '1.16','1.17','1.18','1.19','1.20','1.21' ] steps: - uses: actions/checkout@v3 - name: Set up Go 1.x uses: actions/setup-go@v4 with: go-version: ${{ matrix.go }} id: go - name: Test run: go test -v -race ./...