github.com/wI2L/jettison@v0.7.5-0.20230106001914-c70014c6417a/.github/workflows/ci.yml (about) 1 name: CI 2 3 on: 4 push: 5 branches: 6 - master 7 pull_request: 8 branches: 9 - master 10 11 jobs: 12 test: 13 name: Tests 14 runs-on: ${{ matrix.os }} 15 strategy: 16 fail-fast: false 17 matrix: 18 go: 19 - "1.17.x" 20 - "1.18.x" 21 - "1.19.x" 22 os: 23 - ubuntu-latest 24 - macos-latest 25 - windows-latest 26 steps: 27 - name: Install Go 28 uses: actions/setup-go@v2 29 with: 30 go-version: ${{ matrix.go }} 31 - name: Checkout repository 32 uses: actions/checkout@v2 33 - name: Run tests 34 run: ./ci/test.sh 35 - name: Upload coverage 36 uses: codecov/codecov-action@v1 37 with: 38 file: coverage.txt 39 40 bench: 41 name: Benchmarks 42 needs: test 43 runs-on: ubuntu-latest 44 strategy: 45 fail-fast: false 46 matrix: 47 go: 48 - "1.17.x" 49 - "1.18.x" 50 - "1.19.x" 51 steps: 52 - name: Install Go 53 uses: actions/setup-go@v2 54 with: 55 go-version: ${{ matrix.go }} 56 - name: Checkout repository 57 uses: actions/checkout@v2 58 - name: Install tools 59 run: go get golang.org/x/perf/cmd/benchstat 60 env: 61 GOPROXY: https://proxy.golang.org 62 - name: Run benchmarks 63 run: ./ci/bench.sh 64 - name: Upload statistics 65 uses: actions/upload-artifact@v2 66 with: 67 name: Benchstats-Go${{ matrix.go }} 68 path: benchstats