天天看點

使用FPM封裝RPM包

無意中看到一張架構圖,遷出代碼使用本地FPM打包,看不懂FPM是什麼進階玩意,于是有了下文。

使用FPM封裝RPM包

簡單的說FPM就是将一種類型的包轉換到另外一種的類型。比如我們常說的将編譯安裝的包轉換到rpm包。

進一步的官方說明可參考:

<a href="https://docs.google.com/present/view?id=0Aa9liCTsAyzRZGNtd3dkOTRfMTdmczY2azlkcg&amp;hl=en">https://docs.google.com/present/view?id=0Aa9liCTsAyzRZGNtd3dkOTRfMTdmczY2azlkcg&amp;hl=en</a>

支援的源類型包有:rpm、npm、rubygem、ded、python、dir

支援的輸出類型有:rpm、ded、solaris、puppet

本例隻要介紹常用的rpm包制作方法,至于其它的功能可自行探索。

-s :指定源類型

-t :指定目标類型,即想要制作為什麼包

-n :指定包的名字

-v :指定包的版本号

-C :指定打包的相對路徑,即build directory

原文解釋為:Change directory to here before searching for files

-d --depends :指定依賴于哪些包

--post-install :軟體包安裝完成之後所要運作的腳本;和”--after-install” 意思一樣

--pre-install :軟體包安裝完成之前所要運作的腳本;和”--before-install” 意思一樣

--post-uninstall :軟體包解除安裝完成之後所要運作的腳本;和”--after-remove”意思一樣

--pre-uninstall:軟體包解除安裝完成之前所要運作的腳本;和”--before-remove”意思一樣

注意:website-1.0.3-1.x86_64.rpm生成的包名要每次不一樣才能進行rpm -Uvh 更新,不懂的,需要rpm基礎

第二台伺服器上,看看rpm包安裝的位置