diff --git a/.github/workflows/go.yml b/.github/workflows/go.yml index 1b82f594..61ca936d 100644 --- a/.github/workflows/go.yml +++ b/.github/workflows/go.yml @@ -2,7 +2,6 @@ name: Go on: push: branches: [ main ] - pull_request: jobs: vendoring: diff --git a/.github/workflows/pr.yml b/.github/workflows/pr.yml index dba7ab49..b8b523d2 100644 --- a/.github/workflows/pr.yml +++ b/.github/workflows/pr.yml @@ -40,6 +40,67 @@ jobs: check_filenames: true skip: ./.git,./vendor,*_test.go,go.sum,go.mod + vendoring: + runs-on: ubuntu-latest + steps: + - uses: actions/setup-go@v3 + with: + go-version: '>=1.20' + - uses: actions/checkout@v3 + - run: | + go mod tidy + go mod vendor + go mod verify + bash ./hack/tree_status.sh + + golangci-lint_fmt: + runs-on: ubuntu-latest + container: + image: fedora:latest + steps: + - uses: actions/setup-go@v3 + with: + # cannot use 1.21.X latest version since golangci-lint has an issue. + go-version: '1.21.4' + - uses: actions/checkout@v3 + - run: | + bash hack/install_dep.sh + make .install.golangci-lint + make lint + make gofmt + + tests: + runs-on: ubuntu-latest + container: + image: quay.io/containers/podman:v4 + volumes: + - container_volume:/var/lib/containers + options: "--device /dev/fuse:rw --security-opt label=disable --security-opt seccomp=unconfined --privileged" + steps: + - uses: actions/setup-go@v3 + with: + go-version: '1.21.4' + - uses: actions/checkout@v3 + - run: | + yum -y install make gcc glib2-devel glibc-devel glibc-static device-mapper-devel + export GOBIN=$(pwd)/bin/ + export CGO_ENABLED=1 + make .install.ginkgo + make test + + build_binary: + runs-on: ubuntu-latest + container: + image: fedora:latest + steps: + - uses: actions/setup-go@v3 + with: + go-version: '>=1.20' + - uses: actions/checkout@v3 + - run: | + bash hack/install_dep.sh + make binary + goreportcard: name: update reportcard if: github.event.pull_request.merged == true