閱讀930 返回首頁    go 技術社區[雲棲]


Jenkins 應用三十六計-插件信息[轉載]

Jenkins 三十六計

第一計:Jenkins用得好,插件不能少。

案例一 企業級Jenkins之插件推薦列表[w1]

【相關計策:第一計】

開源版本的Jenkins 具有三大能力:Master-Slave的分布式構建調度能力、Pipeline編排能力、強大的開源生態(插件)能力。

2017年4月,Jenkins創始人KK(Kohsuke Kawaguchi )來到中國,交流中他也明確表示Jenkins的成功主要取決於其開源生態係統,Jenkins有1400多個插件可供使用。因為有開源的插件生態係統的存在,Jenkins要用得好,插件一定是不能少的,需要我們充分發現和使用插件來實現我們的需求,而不是重複造輪子,自己去實現。

但是麵對林林總總的插件,到底該怎麼選?我的常用需求有哪些插件可以滿足,筆者根據以往在企業中管理Jenkins的經驗推薦如下常用的插件列表,希望大家基於Jenkins及其插件生態實現自己的持續交付與DevOps平台。

用戶及權限

Jenkins 用戶權限管理是Jenkins Administration中非常很重要的環節,由於大部分企業都會有自己的域控管理,所以和LDAP集成並基於用戶組實現權限模型設計與管理是企業級Jenkins實踐的重要內容。

代碼管理

Jenkins 項目中配置Source Code Management 去下載代碼進行構建任務,是非常普遍的應用場景。Jenkins插件支持很多SCM的係統,使用最常見的是Git 和SVN。

項目及視圖

Jenkins中對Project 和 view的管理,是用戶日常工作中使用很多的功能。

構建觸發

Jenkins支持多種Build 觸發方式,尤其一些自動化觸發方式非常有用

  • Build periodically,Jenkins 內置功能,可以設置類似crontab時間,周期性地自動觸發構建。

  • Poll SCM,Jenkins 內置功能,類似Build periodically,可以設置類似crontab時間,不同的是不是直接進行構建,而是周期性地在後台檢查所配置的SCM有沒有更新,隻有當有代碼更新時才會觸發構建。

  • Trigger builds remotely (e.g., from scripts),Jenkins 內置功能,遠程觸發構建,通過設置token可以支持遠程腳本中觸發Jenkins構建。

  • Gerrit Trigger https://plugins.jenkins.io/gerrit-trigger,這個插件將Jenkins集成到Gerrit code review中,支持Jenkins配置Gerrit服務器等信息,實現Gerrit event 觸發Jenkins 構建。

  • GitLab https://plugins.jenkins.io/gitlab-plugin, 這個插件將Jenkins 集成到GitLab web hook中,支持Gitlab 分支及Merge Request等相關事件觸發Jenkins構建。

  • GitHub Integration https://plugins.jenkins.io/github-pullrequest ,這個插件將Jenkins集成到GitHub中,支持Gitgub分支及Pull requests 觸發Jenkins 構建。

  • JIRA Trigger https://plugins.jenkins.io/jira-trigger,這個插件將Jenkins集成到Jira WebHooks中,支持Jira issue的狀態等變化時觸發Jenkins構建。

構建參數

Jenkins除了支持普通的參數類型(布爾型、字符串型、多行文本型、選擇型和文件型[w1] )外,還有一些插件支持更加豐富實用的參數類型,比如參數間動態關聯、多層級參數、隱藏參數等 。

構建任務及環境

圍繞構建任務,有許多小的插件,卻提供了一些實用的功能

構建通知

把構建狀態及時地通知用戶,是Jenkins的一個必不可少的功能。Jenkins支持多種主動和被動的通知方式。

容器化Slave

Jenkins的Master-Slave架構實現了分布式構建,可以充分的橫向擴展Slave來提升構建能力,將Slave容器化是目前主流的構建環境標準化、集群化和彈性化的方式。

Admin相關插件

原文鏈接

最後更新:2017-10-30 14:03:54

  上一篇:go  一體化人力資源係統構建,加快企業人才建設
  下一篇:go  WCF技術剖析之十一:異步操作在WCF中的應用(上篇)