最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

什么是 Jenkins? 運用Jenkins持續(xù)集成

2021-04-08 16:55 作者:信碼由韁  | 我要投稿

【注】本文譯自:https://www.edureka.co/blog/what-is-jenkins/

? ??持續(xù)集成是 DevOps 最重要的部分,用于集成各個 DevOps 階段。Jenkins 是最著名的持續(xù)集成工具,我知道你很好奇 Jenkins 受歡迎的原因以及 Jenkins 是否容易學(xué)習(xí)。我確信閱讀完本文后,您的所有問題都會得到解答。

? ??讓我們用簡要概括什么是 Jenkins。

什么是 Jenkins 以及為什么要使用它?

? ? Jenkins 是一個用 Java 編寫的開源自動化工具,帶有用于持續(xù)集成的插件。Jenkins 用于持續(xù)構(gòu)建和測試您的軟件項目,從而使開發(fā)人員更容易將更改集成到項目中,并使用戶更容易獲得新的構(gòu)建。它還允許您通過與大量測試和部署技術(shù)集成來持續(xù)交付軟件。

? ? 借助 Jenkins,組織可以通過自動化來加速軟件開發(fā)過程。Jenkins 集成了各種開發(fā)生命周期過程,包括構(gòu)建、文檔、測試、打包、模擬、部署、靜態(tài)分析等等。

? ??Jenkins 借助插件實現(xiàn)了持續(xù)集成。插件允許集成各種 DevOps 階段。如果要集成特定工具,則需要安裝該工具的插件。例如 Git、Maven 2 項目、Amazon EC2、HTML 發(fā)布者等。

? ??下圖描繪了 Jenkins 正在集成各個 DevOps 階段:

Jenkins 的優(yōu)勢包括:

  • 是一個具有社區(qū)大力支持的開源工具。

  • 易于安裝。

  • 擁有 1000 多個插件,可簡化您的工作。如果不存在插件,則可通過編碼實現(xiàn)并與社區(qū)共享。

  • 它是免費的。

  • 它是用 Java 構(gòu)建的,因此可以移植到所有主要平臺。

? ??Jenkins 的某些方面將其與其他持續(xù)集成工具區(qū)分開來。讓我們看看這些要點。

Jenkins 的特性

? ??以下是有關(guān)Jenkins的一些事實,這些事實使它比其他的持續(xù)集成工具更好:

  • 應(yīng)用:Jenkins 應(yīng)用非常廣泛,在全球范圍內(nèi)有超過 147,000 個活躍安裝和超過 100 萬用戶。

  • 插件:Jenkins 與1000 多個插件互連,從而使其可以與大多數(shù)開發(fā)、測試和部署工具集成。

? ??從以上幾點可以看出,Jenkins 在全球范圍內(nèi)有很高的需求。在我們深入研究 Jenkins 之前,先了解什么是持續(xù)集成以及它的重要性。

什么是持續(xù)集成?

? ??持續(xù)集成是一種開發(fā)實踐,在這種實踐中,要求開發(fā)人員每天多次或更頻繁地對共享存儲庫中的源代碼提交更改。然后構(gòu)建存儲庫中進行的每個提交。這使團隊可以及早發(fā)現(xiàn)問題。除此之外,根據(jù)持續(xù)集成工具的不同,還有其他一些功能,例如在測試服務(wù)器上部署構(gòu)建應(yīng)用程序,為相關(guān)團隊提供構(gòu)建和測試結(jié)果等。

? ??讓我們通過用例了解它的重要性。

持續(xù)集成示例:諾基亞

? ??我敢肯定,您一生中的某些時候都使用過諾基亞手機。在諾基亞的一個軟件產(chǎn)品開發(fā)項目中,有一個名為每晚構(gòu)建(Nightly builds的過程。每晚構(gòu)建可以被認為是持續(xù)集成的前身。這意味著每天晚上,自動化系統(tǒng)都會拉一整天添加到共享存儲庫中的代碼并構(gòu)建該代碼。這個想法與持續(xù)集成非常相似,但是由于在夜間構(gòu)建的代碼很大,因此查找和修復(fù)錯誤確實很麻煩。因此,諾基亞采用了持續(xù)集成(CI)。 結(jié)果,構(gòu)建了對存儲庫中的源代碼的所有提交。 如果構(gòu)建結(jié)果表明代碼中存在錯誤,則開發(fā)人員僅需要檢查該特定提交。 這大大減少了發(fā)布新軟件所需的時間。

? ??現(xiàn)在是了解 Jenkins 如何實現(xiàn)持續(xù)集成的正確時機。

運用?Jenkins 持續(xù)集成

? ? 讓我們想象一個場景,構(gòu)建了應(yīng)用程序的完整源代碼,然后將其部署在測試服務(wù)器上進行測試。聽起來這是開發(fā)軟件的理想方法,但是這個過程存在許多缺陷。我將逐一解釋:

  • 開發(fā)人員必須等到開發(fā)出完整的軟件才能獲得測試結(jié)果。

  • 測試結(jié)果很有可能顯示多個錯誤。開發(fā)人員很難找到這些錯誤,因為他們必須檢查應(yīng)用程序的整個源代碼。

  • 這會減慢軟件交付過程。

  • 關(guān)于編碼或架構(gòu)問題、構(gòu)建失敗、測試狀態(tài)和文件發(fā)布上傳等問題的持續(xù)反饋會導(dǎo)致軟件質(zhì)量下降。

  • 整個過程是手動的,這增加了頻繁故障的風(fēng)險。

? ??從上述問題可以明顯看出,不僅軟件交付過程變慢,而且軟件質(zhì)量也下降了。這導(dǎo)致了客戶的不滿。因此,為了克服這種混亂,迫切需要一個系統(tǒng),使開發(fā)人員可以連續(xù)觸發(fā)構(gòu)建并測試源代碼中的每個更改。這就是 CI 的全部意義所在。Jenkins 是可用的最成熟的 CI 工具,因此讓我們看看運行 Jenkins 的持續(xù)集成如何克服了上述缺點。

? ??首先,我將向您介紹運用 Jenkins 進行持續(xù)集成的通用流程圖,可以一目了然地看到 Jenkins 如何克服上述缺點。同時有助您了解 Jenkins 的工作方式。


? ??上圖描述了以下功能:

  • 首先,開發(fā)人員將代碼提交到源代碼存儲庫。同時,Jenkins 服務(wù)器會定期檢查存儲庫是否有更改。

  • 提交后不久,Jenkins 服務(wù)器檢測到源代碼存儲庫中發(fā)生的更改。Jenkins 將拉出這些更改,并將開始準(zhǔn)備新的構(gòu)建。

  • 如果構(gòu)建失敗,那么相關(guān)團隊將得到通知。

  • 如果構(gòu)建成功,Jenkins 將在測試服務(wù)器中部署新的版本。

  • 在測試之后,Jenkins 會生成反饋,然后通知開發(fā)人員構(gòu)建和測試結(jié)果。

  • 它將繼續(xù)檢查源代碼存儲庫中是否對源代碼進行了更改,并且整個過程不斷重復(fù)。

? ??您現(xiàn)在知道了 Jenkins 是如何克服傳統(tǒng) SDLC 缺點的。下表顯示了“運用 Jenkins 前后”的對比。

運用 Jenkins 前后對比


什么是 Jenkins? 運用Jenkins持續(xù)集成的評論 (共 條)

分享到微博請遵守國家法律
嵊州市| 成武县| 阜平县| 陵水| 长岭县| 石首市| 大荔县| 北宁市| 民县| 西华县| 饶平县| 红河县| 新和县| 三都| 阿勒泰市| 石柱| 定襄县| 二连浩特市| 深泽县| 营口市| 东山县| 三门峡市| 鄂州市| 东乡县| 莆田市| 颍上县| 兴化市| 紫云| 赤水市| 湛江市| 缙云县| 涿鹿县| 宣威市| 内乡县| 正镶白旗| 中方县| 五常市| 繁昌县| 岐山县| 集贤县| 白沙|