mod-outdated target to check for outdated dependencies
Signed-off-by: CrazyMax <crazy-max@users.noreply.github.com>master
							parent
							
								
									ffa3019c1f
								
							
						
					
					
						commit
						c052659543
					
				
							
								
								
									
										5
									
								
								Makefile
								
								
								
								
							
							
						
						
									
										5
									
								
								Makefile
								
								
								
								
							|  | @ -38,7 +38,7 @@ BINARIES=$(addprefix bin/,$(COMMANDS)) | |||
| TESTFLAGS ?= -v $(TESTFLAGS_RACE) | ||||
| TESTFLAGS_PARALLEL ?= 8 | ||||
| 
 | ||||
| .PHONY: all build binaries check clean test test-race test-full integration coverage validate-vendor vendor | ||||
| .PHONY: all build binaries check clean test test-race test-full integration coverage validate-vendor vendor mod-outdated | ||||
| .DEFAULT: all | ||||
| 
 | ||||
| all: binaries | ||||
|  | @ -110,3 +110,6 @@ vendor: ## update vendor | |||
| 	rm -rf ./vendor | ||||
| 	cp -R "$($@_TMP_OUT)"/out/* . | ||||
| 	rm -rf $($@_TMP_OUT)/* | ||||
| 
 | ||||
| mod-outdated: ## check outdated dependencies
 | ||||
| 	docker buildx bake mod-outdated | ||||
|  |  | |||
|  | @ -35,6 +35,17 @@ target "update-vendor" { | |||
|   output = ["."] | ||||
| } | ||||
| 
 | ||||
| target "mod-outdated" { | ||||
|   dockerfile = "./dockerfiles/vendor.Dockerfile" | ||||
|   target = "outdated" | ||||
|   args = { | ||||
|     // used to invalidate cache for outdated run stage | ||||
|     // can be dropped when https://github.com/moby/buildkit/issues/1213 fixed | ||||
|     _RANDOM = uuidv4() | ||||
|   } | ||||
|   output = ["type=cacheonly"] | ||||
| } | ||||
| 
 | ||||
| target "binary" { | ||||
|   inherits = ["_common"] | ||||
|   target = "binary" | ||||
|  |  | |||
|  | @ -1,6 +1,7 @@ | |||
| # syntax=docker/dockerfile:1 | ||||
| 
 | ||||
| ARG GO_VERSION=1.17 | ||||
| ARG MODOUTDATED_VERSION=v0.8.0 | ||||
| 
 | ||||
| FROM golang:${GO_VERSION}-alpine AS base | ||||
| RUN apk add --no-cache git rsync | ||||
|  | @ -35,3 +36,11 @@ if [ -n "$(git status --porcelain -- go.mod go.sum vendor)" ]; then | |||
|   exit 1 | ||||
| fi | ||||
| EOT | ||||
| 
 | ||||
| FROM psampaz/go-mod-outdated:${MODOUTDATED_VERSION} AS go-mod-outdated | ||||
| FROM base AS outdated | ||||
| ARG _RANDOM | ||||
| RUN --mount=target=.,ro \ | ||||
|   --mount=target=/go/pkg/mod,type=cache \ | ||||
|   --mount=from=go-mod-outdated,source=/home/go-mod-outdated,target=/usr/bin/go-mod-outdated \ | ||||
|   go list -mod=readonly -u -m -json all | go-mod-outdated -update -direct | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue