我有一個Java應用程序的自動部署過程,目前我在構建機器上構建應用程序,將構建檢入scm,並讓生產計算機將構建工件(這是一個zip)和通過ant move類和配置文件到他們應該是的地方。部署:是否在生產機器上構建?
我見過其他策略,生產機器從scm中抽取源代碼並自行構建它。
我不喜歡前一種方法的事情是,如果我正在生產而不是暫存或開發或其他任何東西,我必須在構建中手動指定env。如果目標服務器負責這個工作,那麼構建過程中會涉及到更少的思想和摩擦。不過,我也喜歡使用與在分段測試中完全相同的構建。
所以,我想我的問題是,是否已經將已構建/已經測試過的應用程序複製到生產環境或讓生產在測試完成後再次構建應用程序。