name: Test on: push: branches: - main pull_request: schedule: - cron: '0 0/2 * * *' # Every two hours jobs: test: if: ${{ github.repository == 'redpanda-data/connect' || github.event_name != 'schedule' }} runs-on: ubuntu-latest env: CGO_ENABLED: 0 steps: - name: Checkout code uses: actions/checkout@v4 - name: Install Go uses: actions/setup-go@v5 with: go-version: 1.22.x check-latest: true - name: Install dependencies for x_benthos_extra run: | sudo apt update -y sudo apt install -y --no-install-recommends libzmq3-dev - name: Deps run: make deps && git diff-index --quiet HEAD || { >&2 echo "Stale go.{mod,sum} detected. This can be fixed with 'make deps'."; exit 1; } - name: Docs run: CGO_ENABLED=1 make docs TAGS=x_benthos_extra && test -z "$(git ls-files --others --modified --exclude-standard)" || { >&2 echo "Stale docs detected. This can be fixed with 'make docs'."; exit 1; } - name: Test run: make test - name: Fmt run: | go install golang.org/x/tools/cmd/goimports@latest make fmt && test -z "$(git ls-files --others --modified --exclude-standard)" || { >&2 echo "Unformatted files detected. This can be fixed with 'make fmt'."; exit 1; } golangci-lint: if: ${{ github.repository == 'redpanda-data/connect' || github.event_name != 'schedule' }} runs-on: ubuntu-latest env: CGO_ENABLED: 0 steps: - name: Checkout code uses: actions/checkout@v4 - name: Install Go uses: actions/setup-go@v5 with: go-version: 1.21.x check-latest: true - name: Lint uses: golangci/golangci-lint-action@v6 with: version: v1.61.0 args: --timeout 30m cmd/... internal/... public/...