我正在處理一個django項目,即使在我寫這篇文章時,我們也會直播它。生產服務器是一個linode,作爲設置的一部分,我們擁有SSL和證書以及與開發和質量保證有幾點不同之處。如何使用GIT管理生產網站和設置?
在我settings.py
,我有以下代碼:
import socket
hostname = socket.gethostname().lower().replace('-', '_').split('.')[0]
try:
exec("from %s_local_settings import *" % hostname)
except ImportError:
pass
這對於特定的Linode盒加載了本地設置。但是在同一個linode上,我們會有另一個項目實例(我們爲客戶託管的實例)。這首例就像廣告/演示/培訓。所以,我的小節點名稱hack不會工作....
如何在生產環境中處理這類問題?我們將很快備份鏡像數據庫,因此複雜性不斷增長,我不確定如何輕鬆跟蹤和維護所有更改。
我使用的是git,並且我創建了一個名爲production-www的分支,我猜測隨着我們前進,我將從master合併到production-www分支以及特定於此安裝的文件將不會被覆蓋(除了我現在沒有解決方案的節點名稱文件)。
任何人都在做比這更容易或更聰明的事情嗎?
非常仔細。 – jathanism
哈哈,那不是很有幫助。 – boatcoder