
각각을 테스트 했으며 tests/FILENAME-test.sh
Docker 컨테이너 내에서 스크립트를 실행하고 싶습니다.
TEST_OUTPUTS
이 Makefile이 내 것처럼 작동 하지 않도록 어떻게 리팩토링할 수 있나요 ?
docker run
또한 각 명령을 병렬로 실행 하려면 어떻게 해야 합니까 ?
.PHONY: test image
TESTS=$(wildcard tests/*-test.sh)
TEST_OUTPUTS=$(patsubst %.sh,%.out,$(TESTS))
%.out: %.sh image
@sudo docker run -t box-test /bin/bash "-c" "./$^"
test: $(TEST_OUTPUTS)
@echo
image:
@sudo docker build -q -t box-test .
답변1
여기있어:
.PHONY: test image
TESTS=$(wildcard tests/*-test.sh)
test: $(TESTS)
$(TESTS): image
@sudo docker run -t box-test /bin/bash "-c" "./$@"
image:
@sudo docker build -q -t box-test .
docker run
명령을 병렬로 실행하려면 다음을 사용하세요 ( make -j test
를 사용하여 최대 동시 실행 수를 지정할 수 있음 -j
).