CruiseControl.Net: как очистить устаревшую историю сборки?

Я только начал использовать CCNet, и в процессе настройки моих проектов сборки я накопил много истории сборки путем проб и ошибок. Я действительно не хочу хранить эти старые вещи, но я не понимаю, где и как от них избавиться. Я уверен, что это глупый вопрос, и прошу прощения, если упускаю из виду то, что должно быть очевидным. Я примерно полчаса выполнил RTM и Google, а затем покопался в своей установке CCNet. , но это не на меня выпрыгивает. Я удалил файлы состояния для проектов (не знаю, имеет ли это какое-либо отношение к этому), но старые сборки все еще существуют, если я углублюсь в статистику проекта с панели инструментов. Какие-либо предложения? Спасибо.

Ответил: я явно установил каталог артефактов в место, которое не находилось в каталоге сервера CCNet, и, следовательно, никогда не заглядывал в него снова ... пошел искать и, дискотека, есть истории сборки.


person Rex Miller    schedule 24.11.2008    source источник


Ответы (5)


Предполагая, что у вас есть проект под названием «Dev» и вы установили CCNet в папку по умолчанию, у вас будет папка с именем:

c: \ Program Files \ CruiseControl.NET \ server \ Dev

и файл Dev.state в:

c: \ Program Files \ CruiseControl.NET \ сервер

Просто удалите и папку, и файл состояния.

person Carl    schedule 24.11.2008
comment
Дох! Я явно установил каталог артефактов в место, которое не находилось в каталоге сервера CCNet, и, следовательно, никогда не заглядывал в него снова ... пошел искать и, дискотека, есть истории сборки. - person Rex Miller; 25.11.2008
comment
Возможно, это немного устарело - я не нашел папки Dev в .. \ server \. Достаточно было: 1) остановить службу cruisecontrol.net 2) удалить файл Dev.state 3) перезапустить службу 4) принудительно удалить время сборки Unknown Last. - person CrimsonX; 14.05.2010

Не забывайте, что вы можете использовать Artifact Cleanup Publisher, чтобы история сборки не росла. до размеров Марса с течением времени.

person hollystyles    schedule 26.01.2011
comment
Я считаю, что это лучший ответ, потому что удаление всей папки отличается от интеллектуальной очистки, которую на самом деле делает этот издатель. - person Oleg Shuruev; 15.06.2012

Вы ищете папки с «артефактами». Проверьте свой файл ccnet.config на наличие тега

Остановите службу, удалите папку каталога артефактов и перезапустите службу.

person Ted Spence    schedule 22.12.2009

Журналы хранятся в каталогах артефактов в папке artifacts \ MyProjectName \ Build \ log * .xml.

В файле состояния хранятся такие вещи, как дата последней сборки, время и информация.

Лучше всего остановить службу, а затем удалить .state в ProgFiles \ CC.net \ server, а также удалить файлы artifacts \ MyProjectName \ Build \ log .xml.

person ScottCate    schedule 09.07.2010

Как упоминалось выше, используйте Artifact Cleanup Publisher, чтобы поддерживать количество артефактов на разумном уровне.

Если у вас много проектов и вам нужно выполнить ретроспективную очистку, вы можете использовать следующий сценарий Powershell для удаления старых файлов журнала:

$limit = (Get-Date).AddDays(-60)

get-childitem -Path D:\Builds -filter MatchMyProjects.* | %{ 
    $projectPath=$_.FullName
    $logsPath=$projectPath + "\Logs"    
    write-host Removing logs from folder $logsPath
    Get-ChildItem -Path $logsPath -Force -Filter *.xml | Where-Object { !$_.PSIsContainer -and $_.CreationTime -lt $limit } | Remove-Item -Force
}

Благодаря этому ответу: Удалите файлы старше 15 дней с помощью PowerShell

person Dan Malcolm    schedule 14.11.2014