name: Go on: [push, pull_request] jobs: lint: runs-on: ubuntu-latest steps: - uses: actions/checkout@v3 - name: Set up Go uses: actions/setup-go@v3 with: go-version: "1.20" - name: Install goimports run: | go install golang.org/x/tools/cmd/goimports@latest export PATH="$HOME/go/bin:$PATH" - name: Install pre-commit run: pip install pre-commit - name: Lint run: pre-commit run -a build: runs-on: ubuntu-latest strategy: fail-fast: false matrix: go-version: ["1.18", "1.19", "1.20"] steps: - uses: actions/checkout@v3 - name: Set up Go ${{ matrix.go-version }} uses: actions/setup-go@v3 with: go-version: ${{ matrix.go-version }} - name: Install libolm run: sudo apt-get install libolm-dev libolm3 - name: Build run: go build -v ./... - name: Test run: go test -v ./...