什麼是可以支持我持續部署Web應用程序的最佳實踐和工具?如何以敏捷的方式部署網絡應用程序
我們應該能夠毫不費力地部署一天幾次。
這是一個Ruby on Rails 3應用程序。我們使用Git和Github。
什麼是可以支持我持續部署Web應用程序的最佳實踐和工具?如何以敏捷的方式部署網絡應用程序
我們應該能夠毫不費力地部署一天幾次。
這是一個Ruby on Rails 3應用程序。我們使用Git和Github。
什麼是實踐
我假設你正在嘗試敏捷這裏最好的一套。你試圖推出一套用於部署的最佳實踐是有點可怕的。對於這個問題,任何一個敏捷團隊的最佳實踐清單都是可怕的。如果你仔細研究敏捷,你會意識到它需要團隊檢查和適應並不斷改進,當你認爲你的團隊已經找到「最佳實踐」時,你默認同意你可以停止改進,從而停止檢查,適應和改進。作者Agile Estimating and Planning的作者Mike Cohn認爲,敏捷團隊不應該提出一套最佳實踐,而應該通過檢查和調整來不斷改進。
爲了給您一些建設性的反饋,以下是我們的Scrum團隊遵循的一些做法,我們通過檢查和調整我們自己的部署流程來了解這些做法。我將在實踐中添加關於我們的源代碼檢查以及部署的信息。
每次開發人員檢入代碼時,Hudson-ci都會使用scm輪詢觸發器並自動構建代碼並將其部署到開發環境中。它通過電子郵件發送了適當的成功或失敗通知。
每天晚上都會在Hudson-ci自動觸發的開發環境中進行夜間構建。
和可以支持我持續部署Web應用程序的工具?
這裏有幾個CI工具。我最喜歡的是Hudson-ci。其他則是Continuum和Cruise控制。但我認爲哈德森是最通用和最易於使用的工具,並且由於它具有社區驅動插件,因此您可以非常輕鬆地找到適用於git的插件以及適用於Rails應用的ruby。
IMVU is這是一個持續部署的海報小孩,他們通過遵循「如果我們確信我們沒有破壞我們需要立即部署的任何東西」的規則來獲得它們。他們現在在他們的流程中擁有非常令人印象深刻的自動化,但是它始於這一規則
我覺得有些與持續部署幫助的成分包括:
當你說連續部署時,大多數人都認爲自動生產不需要人工干預。你可以做到這一點 - 按鈕式生產部署 - 並且仍然有很大的價值。我們(urbancode,AnthillPro的製造商)幫助很多客戶將這些元素置於適當的位置。很少有人進行自動生產部署,但自動化部署對每個人都有幫助。
Jtf
就在一旁:RoR支持應用程序的極速開發。一個包含管理部分和Markdown的博客可以在10分鐘內完成。 – 2010-12-06 00:25:46
@TimeMachine - 真的嗎?現在我想學習Ruby和RoR。我在哪裏可以得到一些信息?我在Mac OS X上。 – Moshe 2010-12-06 00:42:13