on: pull_request: branches: - master push: branches: - master name: Upstream Test jobs: unit: strategy: fail-fast: false matrix: os: - 'ubuntu' go: # - '1.15.x' - '1.16.x' upstream: # - 'libp2p/go-libp2p-pubsub' flaky # - 'ipfs/go-bitswap' flaky # - 'libp2p/go-libp2p-kad-dht' - 'libp2p/go-libp2p-daemon' runs-on: ${{ matrix.os }}-latest name: ${{ matrix.upstream }} unit tests (${{ matrix.os }}, Go ${{ matrix.go }}) steps: - uses: actions/setup-go@v2 with: go-version: ${{ matrix.go }} - name: Go information run: | go version go env - uses: actions/checkout@v2 with: path: 'libp2p' - uses: actions/checkout@v2 with: repository: ${{ matrix.upstream }} path: upstream - name: Patch in new go-libp2p working-directory: upstream run: | go mod edit -replace "github.com/libp2p/go-libp2p=../libp2p" go mod tidy - name: Run tests working-directory: upstream run: go test -v ./... - name: Run tests (32 bit) working-directory: upstream if: ${{ matrix.os != 'macos' }} # can't run 32 bit tests on OSX. env: GOARCH: 386 run: go test -v ./... - name: Run tests with race detector working-directory: upstream if: ${{ matrix.os == 'ubuntu' }} # speed things up. Windows and OSX VMs are slow run: go test -v -race ./...