2008-11-24 11 views
8

Właśnie zacząłem używać CCNet, a podczas przygotowywania moich projektów kompilacji zdobyłem wiele historii kompilacji z prób i błędów. Naprawdę nie chcę trzymać tych starych rzeczy, ale nie widzę gdzie/jak się tego pozbyć. Jestem pewien, że to głupie pytanie, i przepraszam, jeśli przeoczyłem coś, co powinno być oczywiste. Zrobiłem RTM i Google przez około pół godziny, i szturchałem moją instalację CCNet, ale nie wyskakuje na mnie. Usunąłem pliki stanu dla projektów (nie wiem, czy to ma z tym coś wspólnego), ale stare kompilacje nadal istnieją, jeśli zagłębiam się w statystyki projektu z pulpitu nawigacyjnego. Jakieś sugestie? Dzięki.CruiseControl.Net: Jak można wyczyścić przestarzałą historię budowy?

Odpowiedział: Ja jawnie ustawić katalog artefaktów miejscu, które nie było w katalogu serwera CCNet iw konsekwencji nigdy nie patrzył na nią ponownie i ... poszedł szukać, dyskotekę, tam historie budować.

Odpowiedz

5

Zakładając, że projekt o nazwie "Dev" i masz zainstalowany CCNet w domyślnej lokalizacji, masz folder o nazwie:

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

i plik Dev.state w:

C: Program Files \ \ CruiseControl.NET \ server

Wystarczy skasować folder i plik państwa.

+0

Doh! Wyraźnie ustawiłem katalog artefaktów w miejscu, które nie znajdowało się w katalogu serwera CCNet i w związku z tym nigdy nie zaglądałem do niego ponownie ... poszedłem szukać i, dyskoteka, istnieją historie kompilacji. –

+0

Może to być nieco nieaktualne - nie znalazłem folderu "Dev" w folderze .. \ serwer \. Wystarczyło: 1) zatrzymać serwis cruisecontrol.net 2) usunąć Dev.plik stanu 3) zrestartuj usługę 4) wymuś kompilację, aby wyeliminować "Nieznany" czas ostatniej instalacji. – CrimsonX

2

Szukają Państwo folderów "artefaktów". Sprawdź swój plik ccnet.config dla tagu

Zatrzymaj usługę, usuń folder katalogu artefakt, a następnie ponownie uruchom usługę.

1

Dzienniki są przechowywane w katalogach artefaktów pod artefaktami \ Moja_właściwości \ Kompilacja \ dziennik * .xml.

Plik stanu przechowuje dane takie jak data ostatniej produkcji, godzina, informacje.

Najlepiej zatrzymać usługę, a następnie usunąć .state w pliku ProgFiles \ CC.net \ server, a także usunąć pliki artefaktów \ MyProjectName \ Build \ log .xml.

11

Nie zapominaj, że możesz użyć numeru Artifact Cleanup Publisher, aby z czasem zwiększyć historię kompilacji do rozmiaru Marsa.

+0

Uważam, że jest to najlepsza odpowiedź, ponieważ usunięcie całego folderu różni się od czyszczenia inteligentnego, które faktycznie robi ten wydawca. –

0

Jak wspomniano powyżej, użyj wydawcy czyszczenia artefaktów, aby utrzymać liczbę artefaktów na rozsądnym poziomie.

Jeśli masz wiele projektów i trzeba zrobić retrospektywną czyszczenia, można użyć następującego PowerShell skryptu, aby usunąć stare pliki dziennika:

$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 
} 

Dzięki tej odpowiedzi: Delete files older than 15 days using PowerShell

Powiązane problemy