name: Go Tests on: push: branches: - main - 'release/**' pull_request: branches: - main - 'release/**' concurrency: group: ${{ github.workflow }}-${{ github.head_ref || github.ref_name }} cancel-in-progress: true permissions: {} jobs: linters: name: Linters runs-on: ubuntu-latest timeout-minutes: 10 steps: - name: Install dependencies run: | sudo apt-get update sudo apt-get install -y libbtrfs-dev build-essential apg jq - uses: actions/setup-go@v5 with: go-version: '^1.22.3' - uses: actions/checkout@v3 - name: make lint run: make golangci-lint && GOLANGCI_LINT_EXTRA_ARGS="--timeout=8m --build-tags=testing,integration" make lint - name: Verify go vendor, go modules and gofmt run: | sudo apt-get install -y jq make verify go-tests: runs-on: ubuntu-latest needs: [linters] steps: - name: Checkout uses: actions/checkout@v3 - name: Setup Golang uses: actions/setup-go@v3 with: go-version-file: go.mod - run: go version - name: Run GARM Go Tests run: make go-test