Мы используем TeamCity для непрерывной интеграции, нашим исходным кодом является Git, и у нас есть 1 крупный репозиторий, содержащий несколько файлов .sln (около 10).
Всего в этом репозитории около ~ 100–200 проектов C #.
После отправки в главный репозиторий TeamCity запускает сборку, которая скомпилирует все проекты в репозитории.
Я хотел бы иметь возможность сообщать, какие проекты действительно были затронуты конкретным коммитом, и, таким образом, публиковать только результаты этих проектов как артефакты текущей сборки.
Для этого я разработал решение для интеграции NDepend в наш процесс сборки и создания отчета о различиях между текущими и последними выходными данными сборки. Результаты, которые были изменены / добавлены, будут опубликованы как результаты сборки.
У меня мало опыта работы с NDepend; Судя по тому, что я видел, вся его истинная сила исходит от встроенного в него языка запросов.
Мне интересно, как (если возможно) я могу добиться следующего:
- Разница между папкой, содержащей выходные данные предыдущей сборки, и текущей папкой выходных данных сборки.
- Попросите NDepend создать отчет в формате расходных материалов, чтобы я мог определить файлы, которые нужно скопировать.
Возможен ли такой сценарий? Насколько это было бы легко / сложно?