name: CI on: push: branches: ['*'] pull_request: jobs: lint: runs-on: ubuntu-latest steps: - name: Checkout uses: actions/checkout@v4 - name: Install Go run: | curl -sSL https://go.dev/dl/go1.24.13.linux-amd64.tar.gz -o /tmp/go.tar.gz tar -C /usr/local -xzf /tmp/go.tar.gz echo "/usr/local/go/bin" >> $GITHUB_PATH - name: go vet run: go vet ./internal/... ./cmd/syncwarden/... ./cmd/setup/... - name: Install golangci-lint run: | curl -sSfL https://raw.githubusercontent.com/golangci/golangci-lint/HEAD/install.sh | sh -s -- -b $(go env GOPATH)/bin v2.1.6 echo "$(go env GOPATH)/bin" >> $GITHUB_PATH - name: golangci-lint run: golangci-lint run ./internal/... ./cmd/syncwarden/... ./cmd/setup/... - name: Install govulncheck run: go install golang.org/x/vuln/cmd/govulncheck@latest - name: govulncheck run: govulncheck ./internal/... ./cmd/syncwarden/... ./cmd/setup/... test: runs-on: ubuntu-latest steps: - name: Checkout uses: actions/checkout@v4 - name: Install Go run: | curl -sSL https://go.dev/dl/go1.24.13.linux-amd64.tar.gz -o /tmp/go.tar.gz tar -C /usr/local -xzf /tmp/go.tar.gz echo "/usr/local/go/bin" >> $GITHUB_PATH - name: Test run: go test -race -count=1 ./internal/...