Nexus相關實作3
基於以下Nexus issue與需求
找到有人嘗試撰寫的groovy腳本來做到保留artifect代數的程式
相關程式如下:
安裝方式:
#透過find指令找到關鍵的設定檔:
find /opt -iname 'nexus.properties' -type f
看了一下這個檔案是nexus帳號的
然後重開Nexus:
#重啟:
/opt/nexus-3.41.0-01/bin/nexus start
接著回頭編輯/opt/sonatype-work/nexus3/etc/nexus.properties
關閉建立新的Script的功能,以避免建立過多的Script:
然後一樣重啟:
之後要再建立腳本Task就沒辦法了:
不過這邊我為了實驗先把註解打開,方便修改(因為發現註解後也沒辦法改)
所以先打開註解重啟:
實地測試剛剛建立的groovy清除腳本Task:
註解打開重啟後試著編輯裡面的宣告變數:
在我推了4次jar檔的情況下:
手動執行該Task看看:
然後我在/opt/sonatype-work/nexus3/log/tasks/底下有看到Task的log:
後來測試大概知道
repositoryName:即要改成Repo名稱,這邊用maven-snapshots做測試
maxArtifactCount:留最後多少版的數字
retentionDays:擴充的保留條件,除了上述數字外,外加保留天數
假設同一天我推了5次,並設留3版,但這個retentionDays給2
則原本該移除了最舊兩版因為天數關係還會保留!
所以retentionDays給0代表不使用該擴充條件
另外重要的是:
所以以我自己要留三代,其腳本就是:
測試:
執行Task:
所以當有兩包在同一個Repo看起來會有問題!?
待繼續研究!