Run linting in parallel with building

Linting code changes with golangci-lint is a very slow and resource
intensive process.  However, it does not depend on compiling anything.
This means it may run in parallel with the build tasks for
a modest perceived runtime duration improvement.

Additionally, the former validation make targets that **do** require a
build execute faster than CI is able to provision a VM, simply tack them
onto the end of all build operations.

Signed-off-by: Chris Evich <cevich@redhat.com>
This commit is contained in:
Chris Evich
2024-06-24 13:58:45 -04:00
parent 7ff4bbae26
commit 6c75a10875
4 changed files with 82 additions and 107 deletions

View File

@ -311,9 +311,16 @@ test/version/version: version/version.go
codespell:
codespell -S bin,vendor,.git,go.sum,.cirrus.yml,"*.fish,RELEASE_NOTES.md,*.xz,*.gz,*.ps1,*.tar,swagger.yaml,*.tgz,bin2img,*ico,*.png,*.1,*.5,copyimg,*.orig,apidoc.go" -L secon,passt,bu,hastable,te,clos,ans,pullrequest,uint,iff,od,seeked,splitted,marge,erro,hist,ether,specif -w
.PHONY: validate
validate: lint .gitvalidation validate.completions man-page-check swagger-check tests-expect-exit pr-removes-fixed-skips
# Code validation target that **DOES NOT** require building podman binaries
.PHONY: validate-source
validate-source: lint .gitvalidation swagger-check tests-expect-exit pr-removes-fixed-skips
# Code validation target that **DOES** require building podman binaries
.PHONY: validate-binaries
validate-binaries: man-page-check validate.completions
.PHONY: validate
validate: validate-source validate-binaries
# The image used below is generated manually from contrib/validatepr/Containerfile in this podman repo. The builds are
# not automated right now. The hope is that eventually the quay.io/libpod/fedora_podman is multiarch and can replace this