2008-11-24 18 views
8

我剛開始使用CCNet,在建立項目的過程中,我從試錯中獲得了很多構建歷史。我真的不想保留那些舊的東西,但我似乎無法看到在哪裏/如何擺脫它。我確信這是一個愚蠢的問題,如果我忽視了一些顯而易見的事情,我很抱歉。我做了RTM和谷歌大約半小時,並圍繞我的CCNet安裝,但它並沒有跳出我的身邊。我刪除了項目的狀態文件(不知道這與它有什麼關係),但如果我從儀表板中深入瞭解項目的統計信息,那麼舊版本仍然存在。有什麼建議麼?謝謝。CruiseControl.Net:如何清除過時的構建歷史?

已回答:我已經明確地將artifacts目錄設置爲一個不在CCNet服務器目錄下的位置,因此再也沒有看過它......去看,並且disco有構建歷史。

回答

5

假設你有一個項目叫「開發」和你已經安裝了CCNET到默認的位置,你就會有一個文件夾,名爲:

C:\ Program Files文件\ CruiseControl.NET \服務器\開發

,並在Dev.state文件:

C:\ Program Files文件\ CruiseControl.NET \服務器

只要刪除這兩個文件夾和狀態文件。

+0

衛生署!我已經明確地將artifacts目錄設置爲一個不在CCNet服務器目錄下的位置,因此再也不會查看它了......看起來和disco都有構建歷史。 – 2008-11-24 23:16:33

+0

這可能會稍微過時 - 我在.. \ server \下找不到「Dev」文件夾。這足以: 1)停止cruisecontrol.net服務 2)刪除Dev。狀態文件 3)重新啓動服務 4)強制構建以消除「未知」上次構建時間。 – CrimsonX 2010-05-14 16:22:46

2

你在找什麼是「工件」文件夾。請檢查您的ccnet.config文件標籤

停止服務,刪除神器目錄文件夾,然後重新啓動服務。

1

日誌存儲在artifacts目錄下的artifacts \ MyProjectName \ Build \ log * .xml中。

State文件存儲諸如上次構建日期,時間,信息等內容。

最好停止服務,然後刪除ProgFiles \ CC.net \ server中的.state,並刪除artifacts \ MyProjectName \ Build \ log .xml文件。

11

不要忘了你可以使用Artifact Cleanup Publisher來保持你的構建歷史不會隨着時間的推移而增長到火星的大小。

0

如上所述,使用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 
} 

多虧了這樣的回答:Delete files older than 15 days using PowerShell