如何從Nexus遷移到Artifactory


前言

由於 JFrog Artifactory 在業界得到了普遍的應用,並且 Artifactory 可以完全替代 Nexus 作為 Maven 私服,所以JFrog 提供了自動化的遷移工具 nexus2artifactory,目的是幫現有的 Nexus 用戶一鍵遷移到 Artifactory,從而讓用戶得到更好的Maven 倉庫。 目前該工具支持倉庫類型: local(hosted), remote(proxy), and virtual (group)repositories (注意: Bower類型倉庫目前不支持)。 遷移後,存儲在local(hosted)倉庫的文件會被遷移,在remote倉庫緩存的文件暫時不會被遷移。 可以同時遷移: users, groups(roles), and permissions (privileges), LDAP configurations 此工具需要運行在Nexus服務器,並需要有python環境

1. 下載並運行遷移工具:

下載地址: https://github.com/jfrog/nexus2artifactory 需要下載到Nexus服務器 運行工具: ./NexusToArtifactory.py 可以看到啟動界面:

如何從Nexus遷移到Artifactory

注意: 每項功能都有相應的快捷鍵(下同) i: 初始化配置 r: 配置要遷移倉庫信息 u: 配置要遷移的用戶信息 s: 保存配置 l: 加載已保存的配置 v: 校驗當前配置 x: 運行遷移任務 h: 幫助 q: 退出

2. 初始化配置

按快捷鍵 “r”, 進入初始化界面

如何從Nexus遷移到Artifactory

2.1. 配置Nexus信息 按快捷鍵 “n”, 在提示符下輸入Nexus數據目錄的地址: /data/nexus-work

如何從Nexus遷移到Artifactory

注意: 如果是Nexus3,會需要繼續輸入Nexus的地址,以及用戶名和密碼,如下:

如何從Nexus遷移到Artifactory

2.2. 配置Artifactory信息 填寫Artifactory的相應信息,如下:

如何從Nexus遷移到Artifactory

填寫完畢以後按快捷鍵 ”q” 返回到主界面

3. 配置要遷移的倉庫信息

在主界面按快捷鍵”r”,進入到倉庫配置界面,如下

如何從Nexus遷移到Artifactory

按左()方向鍵可以翻頁查看倉庫列表,後面帶”+”號的是會被遷移的倉庫,如果不想遷移可以按前面的數字標號,去掉”+”號。 編輯完成以後按快捷鍵”q”,退回主界面。

4. 配置要遷移的用戶信息

在主界面按快捷鍵”u”,進入到用戶配置界面,如下

如何從Nexus遷移到Artifactory

按快捷鍵”u”,進入到用戶列表界面,如下

如何從Nexus遷移到Artifactory

按用戶名前面的數字鍵,選擇和放棄遷移用戶,配置完成以後按快捷鍵”q”返回上一級界面。 按快捷鍵”g”,進入用戶組的配置,配置方式同上

如何從Nexus遷移到Artifactory

配置完成以後按快捷”q”,返回到上一級菜單 按快捷鍵”p”和”l”,分別進入權限和LDAP配置界面,操作方式同上

如何從Nexus遷移到Artifactory

如何從Nexus遷移到Artifactory

配置完成以後按”q”鍵,返回到主界面

5. 保存配置信息

在主界面按快捷鍵”s”,保存當前配置,文件名: 20190906.json 如下:

如何從Nexus遷移到Artifactory

6. 執行遷移命令

在主界面按快捷鍵”x”,執行當前遷移任務,可以看到執行的進度:

如何從Nexus遷移到Artifactory

Artifactory會自動創建倉庫,並遷移Nexus文件。 “Total Progress” 進度為100%時,遷移任務就已經完成了。

7. 定時執行遷移任務

利用crontab 定時調用遷移腳本: 命令運行參數: /pathto/NexusToArtifactory.py -n -q \\ -f /pathto/20190906.json \\ -l /pathto/nexus2artifactory.log

-n 非交互模式 -q 靜默模式,不打印日誌 -f 指定保存的配置文件 -l 指定日誌文件

7.1. 配置定時任務 可以設置每天凌晨2點自動運行遷移任務 編輯crontab: crontab –e 填入以下內容(只有一行),保存即可:

0 2 * /pathto/NexusToArtifactory.py -n -q -f /pathto/20190906.json -l /pathto/nexus2artifactory.log

總結

自動化遷移工具能夠遷移製品,用戶,權限等重要信息,有了它之後,大家就能夠儘快的使用 Artifactory ,並且享受 Artifactory 的更多企業級功能了!


分享到:


相關文章: