2016-12-25 31 views
0

其他軟件包管理器有一個鎖定選項。例如,在開發機器上,您可能會有某些軟件包和某些版本。目標是在分段或生產環境中安裝這些相同的軟件包和版本。有時候這叫做shrinkwrap或lockdown。luarocks是否有收縮包裝或鎖定選項?

Luarocks有類似的東西嗎?

回答

0

作爲LuaRocks 2.4.2,這是不幸的是不能作爲一個命令。

但這裏是操作序列產生類似的效果。

在開發機:

mkdir packages 
cd packages 
luarocks list --porcelain | awk '{print $1}' | uniq > packages.txt 
for p in $(cat packages.txt); do luarocks pack $p; done 
luarocks-admin make-manifest . 
cd .. 
tar czvpf packages.tar.gz packages 

複製packages.tar.gz到目標機器然後運行:

tar zxvpf packages.tar.gz 
luarocks --only-server=./packages install foo 

這隻會從packages/目錄中安裝包「foo」的採摘依賴性和子相依(而不是來自網絡),因此所有依賴關係都保證是您在開發機器中打包的依賴關係。

+0

謝謝。我實際上喜歡通過一個「單一的,神奇的命令」這些簡單的步驟。這些命令隱藏太多。 –