На прошлой неделе мы перешли с TFV C на Git на нашем сервере ADS 2019.1.
В нашем конвейере проверки у нас действует агрессивная политика хранения. Он настроен на сохранение в течение 2 дней, 10 хороших сборок с фильтром ветвлений *, и все флажки сняты. ADS записывает его в виде: + refs /head / *
Мы видим, что с момента миграции ни один из Git сборок были удалены. За последние 8 дней у нас есть сотни сборок с их объемом в несколько ГБ.
* Правильный ли фильтр для использования? Это был параметр по умолчанию, введенный ADS, мы действительно хотим, чтобы эта сборка удаляла все сборки для всех ветвей.
Я также пробовал **, но это не изменило, на странице результатов сборки, которую я вижу все сборки построены из временной ветви с номером 4 di git, который, вероятно, является номером запроса на извлечение.
Как мы можем обеспечить очистку сборок в соответствии с политиками хранения?
Определение сборки не связано с конвейером выпуска. Сборки запускаются из запросов извлечения, созданных разработчиками. Запросы извлечения помечаются как выполненные.
Другое определение сборки, одно из которых содержит триггер CI, запускаемый после каждой фиксации, по-прежнему удаляет сборки, основанные на определенной политике хранения.
Изображение наши настройки политики хранения TFS. Основные сборки очищены, сборки по запросу не являются ![Retention policy settings Pull request build](https://i.stack.imgur.com/KeAGS.png)
Список самых старых сборок в TFS после ручной очистки на прошлой неделе, эти сборки имеют возраст 4-5 дней, более 2-дневный лимит политики хранения. Кроме того, вы можете увидеть там не сохранить замок за ними. ![Oldest builds under build history](https://i.stack.imgur.com/18ceV.png)
Обзор удаленных сборок. Там вы можете увидеть «основные» сборки, которые были удалены политикой хранения. ![Latest deleted builds](https://i.stack.imgur.com/XlbTD.png)
Показывает, что основные сборки удаляются после настройки политики хранения 2 дня ![Deleted build by retention](https://i.stack.imgur.com/aI28f.png)