我有兩個孤立的Ruby安裝(一個用於廚師,一個用於Sensu)。從Chef安裝中,我想獲得安裝在Sensu ruby中的所有版本的gem列表。我知道運行時兩種安裝的絕對路徑。從外部的紅寶石安裝獲取寶石版本
我用Gem::Specification::find_all_by_name
之前有很大的影響,這是那種方法我在尋找的,但似乎只對工作當前正在執行的紅寶石,並且似乎沒有有什麼樣的的可重用性概念。
一種方法是使用gem list
與grep
並解析輸出,但我真的寧願不必爲解決問題而掏腰包,我更喜歡使用紅寶石解決方案。我也可以自己檢查文件系統並重新創建Gem::Specification
的邏輯,但這並不比脫殼更好。
有沒有一種方法可以得到等效輸出到Gem::Specification
而不用自己複製解析邏輯?