name: CI on: push: branches: tags: pull_request: jobs: build: name: Build runs-on: ubuntu-latest strategy: matrix: php: [7.1, 7.2, 7.3, 7.4] steps: - name: Set up Go 1.12 uses: actions/setup-go@v1 with: go-version: 1.12 id: go - name: Check out code into the Go module directory uses: actions/checkout@v1 - name: Install PHP uses: shivammathur/setup-php@master with: php-version: ${{ matrix.php }} extension-csv: dom coverage: xdebug - name: Install dependencies and download binary roadrunner run: | export GO111MODULE=on php -v composer -V go mod download composer install --no-interaction --prefer-source find src/ -name "*.php" -print0 | xargs -0 -n1 -P8 php -l chmod +x bin/rr && bin/rr get-binary - name: Run golanf tests run: - go test -race -v -coverprofile=lib.txt -covermode=atomic - go test ./util -race -v -coverprofile=util.txt -covermode=atomic - go test ./service -race -v -coverprofile=service.txt -covermode=atomic - go test ./service/env -race -v -coverprofile=env.txt -covermode=atomic - go test ./service/rpc -race -v -coverprofile=rpc.txt -covermode=atomic - go test ./service/http -race -v -coverprofile=http.txt -covermode=atomic - go test ./service/static -race -v -coverprofile=static.txt -covermode=atomic - go test ./service/limit -race -v -coverprofile=limit.txt -covermode=atomic - go test ./service/headers -race -v -coverprofile=headers.txt -covermode=atomic - go test ./service/metrics -race -v -coverprofile=metrics.txt -covermode=atomic - go test ./service/health -race -v -coverprofile=health.txt -covermode=atomic