如果 Makefile 变量之前未设置且文件存在,则尝试设置该变量。但是,我无法覆盖该变量。有什么想法吗?
GITHUB_TOKEN = ""
build:
if [ -z "$(GITHUB_TOKEN)" ] && [ -f ~/.config/github.token ]; then echo "Overriding github"; $(eval GITHUB_TOKEN="$(cat ~/.config/github.token)") fi
DOCKER_REGISTRY="$(DOCKER_REGISTRY)" DOCKER_TAG="$(RELEASE_TAG)" \
docker-compose -p $(PRO_NAME) \
-f docker/base.compose \
-f docker/build.compose \
build \
--build-arg GITHUB_TOKEN="$(GITHUB_TOKEN)"
--parallel --force-rm
在这种情况下,我将继续--build-arg GITHUB_TOKEN=""""
答案1
我用了GITHUB_TOKEN ?= $(shell cat ~/.config/github.token)