2009-09-06 57 views
3

我們有開發人員在不同的地理位置工作,我們希望爲每個地理位置設置Archiva(爲了確保獲取工件的往返次數少)。Maven - Archiva - 爲不同地理位置設置Archiva

是否有可能,每當一個工件上載/從Archiva在位置G1刪除,則同樣的變化被推向Archiva在位置G2G3管理信息庫等?

+0

任何對此有想法的人? – peakit

回答

2

這不完全是你要求的,但淨效果是相同的系統的用戶,所以這是值得研究。

您可以使用proxy connectors將Archiva設置爲代理遠程存儲庫。 使用此機制,您可以將G2配置爲擁有G1的代理,這意味着當任何工件部署到G1時,它將通過代理機制在G2上提供。

從文檔:

代理連接器用於將一管理信息庫(存儲在Archiva機)鏈接到遠程存儲庫(通過URL訪問)。這將意味着,當託管存儲庫接收到請求時,會諮詢連接器以決定是否應從遠程存儲庫請求資源(並可能將結果緩存到本地以備將來的請求使用)。

每個託管存儲庫都可以代理多個遠程存儲庫,以允許通過Archiva實例內的單個接口對存儲庫進行分組。例如,通過Archiva的單個存儲庫代理所有遠程發行版以及爲所有遠程快照存儲庫使用單個快照存儲庫是很常見的。

基本代理連接器配置只是將遠程存儲庫鏈接到託管存儲庫(使用可選的網絡代理以通過防火牆訪問)。但是,不同類型的工件和路徑的行爲可以由代理連接器專門管理,以便更靈活地控制對遠程存儲庫的訪問。


如果代理連接器將不會爲你工作,你可以看看其他複製方法。我會重新考慮一下,因爲任何自行開發的解決方案都可能會在用戶修改存儲庫內容時引入問題。

  • 只要您只允許部署到其中一個節點,您就可以使用rsync或robocopy複製節點之間的存儲位置。
  • 您可以編寫一個custom plugin來偵聽獲取和刪除事件並將相應的事件觸發到另一個節點。
+0

我欣賞裏奇.. 但我在找的是..我可以上傳/刪除工件從一個存儲庫和其他只是反映相同.. 這可能嗎? – peakit

+0

+1,用於快速和準確的答案(一如Maven,Rich!一樣)。我覺得peakit現在可以應用你的答案來獲得真正的解決方案。我也會記住你的建議,因爲當我需要時;-) – KLE