penguin/monok8s

k8s image for Mono Gateway Dev Kit

commit 16aa141aa1e57b9a3b3e4ea0e141f27f2e25c5972a984512d3583734b49c06a8

author斟酌 鵬兄 <tgckpg@gmail.com>
date2026-04-16T12:42:17Z
subjectFixed build tag error on make
commit 16aa141aa1e57b9a3b3e4ea0e141f27f2e25c5972a984512d3583734b49c06a8
Author: 斟酌 鵬兄 <tgckpg@gmail.com>
Date:   2026-04-16T12:42:17Z

    Fixed build tag error on make
---
 clitools/makefile |  9 +++++++++
 makefile          | 28 ++++++++++++++++++++++++----
 2 files changed, 33 insertions(+), 4 deletions(-)

diff --git a/clitools/makefile b/clitools/makefile
index 0b661fb..05a5f52 100644
--- a/clitools/makefile
+++ b/clitools/makefile
@@ -73,6 +73,15 @@ clean:
 		$(BUILDINFO_FILE) \
 		$(OUT_DIR)/crds
 
+dockerclean:
+	@echo "Removing tagged images..."
+	- docker rmi \
+		localhost/monok8s/control-agent:$(VERSION) \
+		2>/dev/null || true
+
+	@echo "Removing dangling images..."
+	- docker image prune -f
+
 all: build build-agent build-local
 
 .PHONY: clean all run .buildinfo build build-local build-agent uboot-tools
diff --git a/makefile b/makefile
index 118d279..57574a0 100644
--- a/makefile
+++ b/makefile
@@ -45,7 +45,6 @@ BUILD_VERSION   ?= $(KUBE_VERSION)
 BUILD_DATE      := $(shell date -u +%Y-%m-%dT%H:%M:%SZ)
 BUILD_GIT       := $(shell git rev-parse --short HEAD 2>/dev/null || echo unknown)
 BUILD_INFO_FILE := $(OUT_DIR)/build-info
-BUILD_BASE_TAG := $(shell docker image inspect monok8s/build-base:dev | jq -r '.[].Id' | cut -d':' -f2 | cut -c -8 || echo dev)
 
 # ---- File groups -------------------------------------------------------------
 
@@ -201,14 +200,15 @@ $(INITRAMFS): $(INITRAMFS_DEPS) | $(OUT_DIR)
 $(CLITOOLS_BIN): $(CLITOOLS_SRCS)
 	$(MAKE) -C clitools build-agent
 
-vpp: $(VPP_TAR) $(DPDK_TAR) $(FMLIB_TAR) $(FMC_TAR) $(NXP_TAR)
+vpp: $(BUILD_BASE_STAMP) $(VPP_TAR) $(DPDK_TAR) $(FMLIB_TAR) $(FMC_TAR) $(NXP_TAR)
+	@build_base_tag=$$(docker image inspect $(DOCKER_IMAGE_ROOT)/build-base:$(TAG) | jq -r '.[0].Id' | cut -d':' -f2 | cut -c -8); \
 	@mkdir -p $(OUT_DIR)/vpp
 	docker build \
 		-f docker/vpp.Dockerfile \
 		--build-arg APT_PROXY=$(APT_PROXY) \
 		--build-arg DOCKER_IMAGE_ROOT=$(DOCKER_IMAGE_ROOT) \
 		--build-arg TAG=$(TAG) \
-		--build-arg BUILD_BASE_TAG=$(BUILD_BASE_TAG) \
+		--build-arg BUILD_BASE_TAG=$$build_base_tag \
 		--build-arg NXP_VERSION=$(NXP_VERSION) \
 		--build-arg FMLIB_TAR=$(FMLIB_TAR) \
 		--build-arg FMLIB_VERSION=$(FMLIB_VERSION) \
@@ -240,6 +240,7 @@ $(BOARD_ITB): $(ITB_DEPS) | $(OUT_DIR)
 	test -f $@
 
 $(RELEASE_IMAGE): $(RELEASE_DEPS) | $(OUT_DIR)
+	@build_base_tag=$$(docker image inspect $(DOCKER_IMAGE_ROOT)/build-base:$(TAG) | jq -r '.[0].Id' | cut -d':' -f2 | cut -c -8); \
 	docker build \
 		-f docker/alpine.Dockerfile \
 		--no-cache \
@@ -250,7 +251,7 @@ $(RELEASE_IMAGE): $(RELEASE_DEPS) | $(OUT_DIR)
 		--build-arg KUBE_VERSION=$(KUBE_VERSION) \
 		--build-arg CRIO_VERSION=$(CRIO_VERSION) \
 		--build-arg DEVICE_TREE_TARGET=$(DEVICE_TREE_TARGET) \
-		--build-arg BUILD_BASE_TAG=$(BUILD_BASE_TAG) \
+		--build-arg BUILD_BASE_TAG=$$build_base_tag \
 		-t $(DOCKER_IMAGE_ROOT)/buildenv-alpine:$(TAG) .
 
 	@cid=$$(docker create \
@@ -315,6 +316,25 @@ clean:
 distclean: clean
 	rm -rf $(OUT_DIR)
 
+dockerclean:
+	$(MAKE) -C clitools dockerclean
+	@echo "Removing tagged images..."
+	- docker rmi \
+		$(DOCKER_IMAGE_ROOT)/build-base:$(TAG) \
+		$(DOCKER_IMAGE_ROOT)/vpp-source:$(TAG) \
+		$(DOCKER_IMAGE_ROOT)/vpp:$(TAG) \
+		$(DOCKER_IMAGE_ROOT)/buildenv-alpine:$(TAG) \
+		2>/dev/null || true
+
+	@echo "Removing build-base IID tags..."
+	@docker images --format '{{.Repository}}:{{.Tag}}' \
+		| grep '^$(DOCKER_IMAGE_ROOT)/build-base:' \
+		| grep -v ':$(TAG)$$' \
+		| xargs -r docker rmi 2>/dev/null || true
+
+	@echo "Removing dangling images..."
+	- docker image prune -f
+
 pkgclean:
 	rm -rf $(PACKAGES_DIR)