name: CI on: [push, pull_request] jobs: test: name: Go ${{ matrix.go-version }} with Kafka ${{ matrix.kafka-version }} on Ubuntu runs-on: ubuntu-latest strategy: fail-fast: false matrix: go-version: [1.12.x, 1.13.x] kafka-version: [2.2.2, 2.3.1, 2.4.0] platform: [ubuntu-latest] env: KAFKA_PEERS: localhost:9091,localhost:9092,localhost:9093,localhost:9094,localhost:9095 TOXIPROXY_ADDR: http://localhost:8474 KAFKA_INSTALL_ROOT: /home/runner/kafka KAFKA_HOSTNAME: localhost DEBUG: true KAFKA_VERSION: ${{ matrix.kafka-version }} KAFKA_SCALA_VERSION: 2.12 steps: - uses: actions/checkout@v1 - name: Setup Go uses: actions/setup-go@v1 with: go-version: ${{ matrix.go-version }} - uses: actions/cache@v1 with: path: ~/go/pkg/mod key: ${{ runner.os }}-go-${{ hashFiles('**/go.sum') }} restore-keys: | ${{ runner.os }}-go- # See https://github.com/actions/setup-go/issues/14 - name: Setup env run: | echo "::set-env name=GOPATH::$(go env GOPATH)" echo "::add-path::$(go env GOPATH)/bin" shell: bash - name: Install dependencies run: | curl -sSfL https://raw.githubusercontent.com/golangci/golangci-lint/master/install.sh | sh -s -- -b $(go env GOPATH)/bin v1.23.3 export REPOSITORY_ROOT=${GITHUB_WORKSPACE} vagrant/install_cluster.sh vagrant/boot_cluster.sh vagrant/create_topics.sh vagrant/run_java_producer.sh - name: Run test suite run: make test - name: Run linter run: make lint - name: Teardown run: vagrant/halt_cluster.sh