У меня есть Makefile в проекте, который примерно выглядит следующим образом:
.PHONY: lint test teamcity
lint:
# commands here
test:
# commands here
teamcity: lint test
Инструменты, в которых я работаю make lint
и make test
, могут определить, запущены они или нетв CI (TeamCity), посмотрев на переменную окружения TEAMCITY_VERSION
.Однако мы запускаем их в контейнере Docker на агентах TeamCity, поэтому переменная не задана.
Я хочу добиться следующего:
- При запуске
make teamcity
команды в целях lint
и test
должны выполняться с установленным в среде TEAMCITY_VERSION
; - При выполнении
make test
или make lint
ничего особенного не должно происходить (переменная не должна бытьдобавлен, хотя нет необходимости удалять его, если он установлен во внешней среде).
Как этого добиться?