Makefile - phpmd в цикле

Всем привет.

Возникла необходимость проверять линтерами измененные во время последнего коммита php файлы в пайплайне гитлаба.
Использую для это команды Makefile в gitlab-ci.yml.
Измененные файлы определяю следующим образом CHANGED_FILES=$(filter src%.php,$(shell (git diff-tree --no-commit-id --name-only -r HEAD))). Проблема заключается в том, что консольная команда на запуск phpmd может принять наименование только одного файла или папки. Поэтому подумал, что можно запускать команду линтера в цикле. Сделал следующим образом:

lint-md:   
   @for i in $(CHANGED_FILES); do \     
    $(VENDOR_BIN_DIR)/phpmd $$i $(CQ_REPORT)MessDetector\\Gitlab Controversial,./phpmd.xml.dist > phpmd-report.json || true; \
  done

И это даже работает, только вот в отчете о проверке есть информация только об ошибках в последнем файле, чье наименование содержится в переменной CHANGED_FILES.

Подскажите, как можно решить эту проблему в рамках makefile?


Ответы (0 шт):