1- .PHONY : help test test-auto test-interactive test-all test-syntax lint clean build-test-images docker-clean shellcheck
1+ .PHONY : help test test-auto test-interactive test-all test-debian test-debian-all test- syntax lint clean build-test-images build-test-images-debian docker-clean shellcheck
22
33# Default target
44.DEFAULT_GOAL := help
55
66# Ubuntu versions to test
77UBUNTU_VERSIONS := 24.04 25.10
8+ DEBIAN_VERSIONS := bookworm trixie
89
910help : # # Show this help message
1011 @echo " Linux Bootstrap Testing Makefile"
@@ -25,6 +26,12 @@ test-interactive: ## Start interactive Docker container for manual testing
2526test-all : # # Run tests on all Ubuntu versions (24.04, 25.10)
2627 @./test/run-tests.sh all
2728
29+ test-debian : # # Run automated tests on Debian bookworm
30+ @./test/run-tests.sh debian
31+
32+ test-debian-all : # # Run tests on all Debian versions (bookworm, trixie)
33+ @./test/run-tests.sh debian-all
34+
2835test-syntax : # # Run syntax checks on all bash scripts
2936 @./test/run-tests.sh syntax
3037
@@ -34,6 +41,7 @@ shellcheck: ## Run shellcheck on all scripts
3441 @echo " Running shellcheck..."
3542 @if command -v shellcheck > /dev/null 2>&1 ; then \
3643 shellcheck -x --severity=error bootstrap; \
44+ find debian/ -type f -exec shellcheck -x --severity=error {} \+ ; \
3745 shellcheck -x --severity=error ubuntu/bootstrap; \
3846 find ubuntu/ -type f -name ' install-*' -exec shellcheck -x --severity=error {} \+ ; \
3947 find generic/ -type f -exec shellcheck -x --severity=error {} \+ ; \
@@ -53,13 +61,24 @@ build-test-images: ## Build Docker test images for all Ubuntu versions
5361 . ; \
5462 done
5563
64+ build-test-images-debian : # # Build Docker test images for all Debian versions
65+ @echo " Building test images for Debian versions: $( DEBIAN_VERSIONS) "
66+ @for version in $(DEBIAN_VERSIONS ) ; do \
67+ echo " Building Debian $$ version..." ; \
68+ docker build \
69+ --build-arg DEBIAN_VERSION=$$ version \
70+ -f test/docker/Dockerfile.debian-noninteractive \
71+ -t debian-bootstrap-test:$$ version \
72+ . ; \
73+ done
74+
5675clean : docker-clean # # Clean up all test artifacts
5776
5877docker-clean : # # Remove all test Docker images
5978 @echo " Cleaning up Docker test images..."
60- @docker images | grep ubuntu-bootstrap-test | awk ' {print $$3}' | xargs -r docker rmi || true
79+ @docker images | grep -E ' ubuntu-bootstrap-test|debian-bootstrap-test ' | awk ' {print $$3}' | xargs -r docker rmi || true
6180 @echo " Cleanup complete"
6281
63- ci : test-syntax test-all # # Run full CI test suite (syntax + all versions)
82+ ci : test-syntax test-all test-debian-all # # Run full CI test suite (syntax + all versions)
6483
65- quick : test-syntax test-auto # # Quick check: syntax + single version test
84+ quick : test-syntax test-auto test-debian # # Quick check: syntax + single- version Ubuntu and Debian tests
0 commit comments