2012-06-20 373 views
13

我的問題是相當主觀的,主持人請不要關閉它,因爲我想知道有經驗的書呆子的意見。瞭解有什麼區別詹金斯和Django的詹金斯

我是新來部署的舞臺,並在做一些jenkins RTFM,從蟒蛇/ Django的背景我搜索github上找到django-jenkins到來。

CI的整個想法是有一個連續的構建過程,因此,如果構建失敗,你可以回覆到你的最後一個階段。

至於我可以讓出,詹金斯運行的服務器,運行測試,如果所有的測試都通過了部署,當代碼推到github上或其他一些回購上。它可能會通過投票或cron作業與回購商談。

而當我的文檔中看着Django的詹金斯中提到

./manage.py jenkins 

這意味着,我們可以在本地添加命令來設置文件,測試的東西,然後再部署。 (糾正我,如果我錯了)

所以,有什麼區別呢? django-jenkins是否刪除了使用jenkins for CI的額外服務器的任何需求?

請讓我知道,並清除我在哪裏我錯了。

回答

20

Jenkins是實際的持續集成工具本身:它處理手動和自動構建,部署並可以運行測試腳本和顯示報告。這對您的測試是否仍然通過以及構建是否成功很有用。

django-jenkins是Django Web框架的Python包,它提供了可在Jenkins中使用的其他工具。例如,它生成可由Jenkins讀取的報告。您可以將這些命令添加到構建腳本中以生成報告。換句話說,Jenkins可以用於許多不同的持續集成目的,但是如果你碰巧在Python/Django中構建網站,那麼django-jenkins提供了額外的功能來使生活更輕鬆。

+1

感謝您的回答,這對我很有意義。你能否從使用POV中進一步闡述它。假設我有一個非常複雜的webapp說一個CRM,那麼我該如何使用jenkins和django-jenkins。我需要他們兩個的善良嗎?每個人將擔任什麼角色?您可以編輯您的答案以包含上述內容。 – user993563

+0

正如我所說的,Jenkins提供了自動構建和測試功能,並且django-jenkins包含了用於Django項目的附加功能。如果您選擇使用Jenkins,則不必使用django-jenkins,它是可選的。這取決於你評估你的情況,並決定你是否找到有用的django-jenkins。 –