Skip to content

Commit a805492

Browse files
authored
Merge pull request #13 from devilbox/docker-pull-ignore
Add docker pull ignore
2 parents 6a6ae0a + 541ccc3 commit a805492

File tree

1 file changed

+19
-2
lines changed

1 file changed

+19
-2
lines changed

Makefile.docker

Lines changed: 19 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,10 @@ DOCKER_TAG = latest
2323
DIR = .
2424
FILE = Dockerfile
2525

26+
# Space separated Docker images (in FROM block) to not to pull
27+
DOCKER_PULL_BASE_IMAGES_IGNORE =
28+
29+
2630
# Auto-detect current platform and use it as default to build for
2731
_PLATFORM = $(shell uname -m)
2832
ifeq ($(strip $(_PLATFORM)),x86_64)
@@ -193,11 +197,24 @@ docker-load:
193197
# Helper Targets
194198
# -------------------------------------------------------------------------------------------------
195199
.PHONY: docker-pull-base-image
200+
_DOCKER_PULL_BASE_IMAGES_FOUND = $(shell grep FROM $(DIR)/$(FILE) | sed 's/^FROM\s*//g' | sed 's/\s.*$$//g' | sort -u )
201+
_DOCKER_PULL_BASE_IMAGES_PULL = $(shell \
202+
for img in $$( echo "$(_DOCKER_PULL_BASE_IMAGES_FOUND)" | sed 's/\s/\n/g' ); do \
203+
if ! echo $(DOCKER_PULL_BASE_IMAGES_IGNORE) | grep -F "$${img}" >/dev/null; then \
204+
echo "$${img}"; \
205+
fi; \
206+
done; \
207+
)
196208
docker-pull-base-image:
197209
@echo "################################################################################"
198-
@echo "# Pulling Base Image $(shell grep FROM $(DIR)/$(FILE) | sed 's/^FROM\s*//g';) (platform: $(ARCH))"
210+
@echo "# Pulling Base Image (platform: $(ARCH))"
199211
@echo "################################################################################"
200-
@grep FROM $(DIR)/$(FILE) | sed 's/^FROM\s*//g' | sed 's/\s.*$$//g' | sort -u | while read -r line; do \
212+
@echo "Docker File: $(DIR)/$(FILE)"
213+
@echo "Images Found: $(_DOCKER_PULL_BASE_IMAGES_FOUND)"
214+
@echo "Images Ignore: $(DOCKER_PULL_BASE_IMAGES_IGNORE)"
215+
@echo "Images Actual: $(_DOCKER_PULL_BASE_IMAGES_PULL)"
216+
@echo
217+
@echo $(_DOCKER_PULL_BASE_IMAGES_PULL) | sed 's/\s/\n/g' | while read -r line; do \
201218
echo "docker pull --platform $(ARCH) $${line}"; \
202219
SUCC=0; \
203220
for count in $$(seq 10); do \

0 commit comments

Comments
 (0)