任務構建信息的提供方法、裝置的制造方法
【專利摘要】本申請公開了一種任務構建信息的提供方法,包括:獲得任務構建信息;其中所述任務構建信息是以任務構建完成作為觸發(fā)條件確定的;將所述任務構建信息發(fā)送給外圍系統(tǒng)。本申請可避免外圍系統(tǒng)定時輪詢持續(xù)集成工具Hudson或持續(xù)集成系統(tǒng),而造成巨大資源消耗的發(fā)生。本申請還公開一種任務構建信息的提供裝置。
【專利說明】
任務構建信息的提供方法、裝置
技術領域
[0001]本申請涉及計算機技術領域,特別涉及一種持續(xù)集成系統(tǒng)的任務構建信息的提供方法、裝置。
【背景技術】
[0002]軟件集成是指將完成某項工作的一組相關的應用程序組織起來在一個統(tǒng)一的操作環(huán)境下以綜合一致和整體連貫的形態(tài)來進行工作。為了盡快的發(fā)現(xiàn)集成錯誤,持續(xù)集成概念應運而生。
[0003]持續(xù)集成是一種軟件開發(fā)實踐,即團隊開發(fā)成員經(jīng)常集成他們的開發(fā)結果,通常每個成員每天至少集成一次,也就意味著每天可能會發(fā)生多次集成。每次集成都會自動化的構建持續(xù)集成任務,依次執(zhí)行該任務包含的各階段所對應的操作(一般包括開發(fā)結果的編譯、編譯結果發(fā)布和編輯結果自動化測試等),來實現(xiàn)對開發(fā)結果正確性等的驗證。在該任務構建完成后,生成構建詳情數(shù)據(jù)。其中,這里所說的“構建詳情數(shù)據(jù)” 一般包括構建節(jié)點、構建連接、構建開始時間和/或構建狀態(tài)等數(shù)據(jù)。
[0004]目前市場上主流的持續(xù)集成工具有很多,如CruiseControl、Hudson、Jenkins、Continuum等。其中,部分持續(xù)集成工具具有一定的封閉性,其通過本地化文件的方式存儲所有任務(包括但不限于持續(xù)集成任務)的構建詳情數(shù)據(jù),并無對外部系統(tǒng)通信模塊。持續(xù)集成工具所連接的外圍系統(tǒng)為了實現(xiàn)對構建詳情數(shù)據(jù)的獲取,主要有以下兩種方案:
[0005]1、系統(tǒng)通過定時輪詢訪問持續(xù)集成工具提供的任務遠程接口,來確定持續(xù)集成工具的任務是否完成構建;并在查詢到任務構建完成時,請求獲取任務的構建詳情數(shù)據(jù);
[0006]2、系統(tǒng)通過定時輪詢直接讀取持續(xù)集成工具的持久化數(shù)據(jù),來獲取任務的構建詳情數(shù)據(jù)。
[0007]采用上述定時輪詢的方式,會頻繁訪問持續(xù)集成工具,造成巨大資源消耗。
【發(fā)明內(nèi)容】
[0008]本申請實施例提供一種任務構建消息的提供方法,用于解決持續(xù)集成工具或持續(xù)集成系統(tǒng)被頻繁訪問,而造成的巨大資源消耗的問題。
[0009]本申請實施例還提供一種任務構建信息的提供裝置。
[0010]為解決上述技術問題,本申請實施例提供:
[0011]—種任務構建信息的提供方法,包括:
[0012]獲得任務構建信息;其中所述任務構建信息是以任務構建完成作為觸發(fā)條件確定的;
[0013]將所述任務構建信息發(fā)送給外圍系統(tǒng)。
[0014]—種任務構建信息的提供裝置,包括:
[0015]獲取模塊,用于獲取任務構建信息;其中所述任務構建信息是以任務構建完成作為觸發(fā)條件確定的;
[0016]發(fā)送模塊,用于將所述任務構建信息發(fā)送給外圍系統(tǒng)。
[0017]一種任務構建信息的提供方法,包括:
[0018]構建任務,并監(jiān)控任務構建狀態(tài);
[0019]在監(jiān)控到任務構建完成后,獲得任務構建信息;
[0020]將所述任務構建信息發(fā)送給外圍系統(tǒng)。
[0021]一種持續(xù)集成系統(tǒng),包括:
[0022]持續(xù)集成工具,用于構建任務,并監(jiān)控任務構建狀態(tài);
[0023]任務構建?目息的提供裝置,用于在任務構建完成后,獲得任務構建?目息,將所述任務構建信息發(fā)送給外圍系統(tǒng)。
[0024]與現(xiàn)有技術相比,本申請實施例具有以下有益效果:
[0025]持續(xù)集成工具Hudson完成任務構建后即觸發(fā)任務構建信息的提供裝置進行工作,任務構建信息的提供裝置獲取任務構建信息后,將任務構建信息發(fā)送給外圍系統(tǒng)。因此,本申請實施例可避免外圍系統(tǒng)定時輪詢持續(xù)集成工具Hudson或持續(xù)集成系統(tǒng),而造成巨大資源消耗的發(fā)生。
【附圖說明】
[0026]此處所說明的附圖用來提供對本申請的進一步理解,構成本申請的一部分,本申請的示意性實施例及其說明用于解釋本申請,并不構成對本申請的不當限定。在附圖中:
[0027]圖1是本申請實施例提供的一種任務構建ig息的提供方法的流程不意圖;
[0028]圖2是本申請實施例提供的一種任務構建信息的提供方法的部分流程詳解圖;
[0029]圖3是本申請實施例提供的一種任務構建信息的提供方法的ActiveMQ服務器與外圍系統(tǒng)的連接關系;
[0030]圖4是本申請實施例提供的一種任務構建信息的提供裝置的系統(tǒng)結構圖;
[0031]圖5是本申請實施例提供的一種任務構建信息的提供裝置與持續(xù)集成工具Hudson、夕卜圍系統(tǒng)、中間件的連接示意圖;
[0032]圖6是本申請實施例提供的另一種任務構建信息的提供方法的流程示意圖;
[0033]圖7是本申請實施例提供的一種持續(xù)集成系統(tǒng)的系統(tǒng)結構圖。
【具體實施方式】
[0034]為使本申請的目的、技術方案和優(yōu)點更加清楚,下面將結合本申請具體實施例及相應的附圖對本申請技術方案進行清楚、完整地描述。顯然,所描述的實施例僅是本申請一部分實施例,而不是全部的實施例?;诒旧暾堉械膶嵤├?,本領域普通技術人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本申請保護的范圍。
[0035]圖1是本申請實施例提供的一種任務構建信息的提供方法的流程示意圖。
[0036]圖2是本申請實施例提供的一種任務構建信息的提供方法的部分流程詳解圖。
[0037]圖3是本申請實施例提供的一種任務構建信息的提供方法的ActiveMQ服務器與外圍系統(tǒng)的連接關系。
[0038]所述任務構建信息的提供方法具體包括以下步驟:
[0039]SlOl:任務構建信息的提供裝置獲取任務構建信息;其中任務構建信息是以任務構建完成作為觸發(fā)條件確定的。
[0040]在一種實施例中,執(zhí)行主體可以為任務構建信息的提供裝置,所述任務構建信息的提供裝置可以以插件形式嵌入持續(xù)集成工具中,所述任務構建信息的提供裝置與持續(xù)集成工具可實現(xiàn)數(shù)據(jù)通信。
[0041]由于所述任務構建信息的提供裝置可以以插件形式嵌入持續(xù)集成工具中,在一種實施方式中,持續(xù)集成工具可以首先運行任務構建程序,當任務構建程序運行完成后,對所述任務構建信息的提供裝置的程序進行調(diào)用執(zhí)行;即當所述持續(xù)集成工具任務構建完成以后,所述任務構建信息的提供裝置開始工作并獲得任務構建信息。
[0042]S102:任務構建信息的提供裝置將任務構建信息發(fā)送給外圍系統(tǒng)。
[0043]所述外圍系統(tǒng)可以用于監(jiān)控并管理持續(xù)集成工具的任務構建情況。當持續(xù)集成工具具有多臺時,且每臺持續(xù)集成工具有成百上千個任務處于構建中,所述外圍系統(tǒng)將統(tǒng)一對所有任務的構建情況進行監(jiān)控和管理。
[0044]所述任務構建信息的提供裝置與外圍系統(tǒng)聯(lián)通,可實現(xiàn)數(shù)據(jù)通信。所述任務構建信息的提供裝置在獲得任務構建信息以后,將任務構建信息發(fā)送給外圍系統(tǒng)。具體的實施例有多種,其中一種實施例,預先配置發(fā)送條件(可以但不限于外圍系統(tǒng)地址及端口),所述任務構建信息的提供裝置在獲得任務構建信息以后,根據(jù)發(fā)送條件將任務構建信息發(fā)送給外圍系統(tǒng);其中另一種實施例,所述任務構建信息的提供裝置在獲得任務構建信息以后,根據(jù)外圍系統(tǒng)發(fā)送的訪問請求將任務構建信息發(fā)送給外圍系統(tǒng)。其中,這里所說的訪問請求可以不是按照一定的周期發(fā)送的,比如可以是在外圍系統(tǒng)存在任務構建信息的獲取需求時,才發(fā)送的。
[0045]進一步的,對步驟S102中任務構建信息的提供裝置將任務構建信息發(fā)送給外圍系統(tǒng)進行說明。在一種實施例中,所述任務構建信息的提供裝置通過中間件,將任務構建信息發(fā)送給外圍系統(tǒng)。具體的,所述任務構建信息的提供裝置在獲得任務構建信息以后,先發(fā)送給中間件,再由中間件根據(jù)條件轉發(fā)給外圍系統(tǒng)。在一種實施例中,所述中間件可以但不限于為ActiveMQ服務器。如圖3所示,ActiveMQ服務器可以但不限于與開源ActiveMQ消費端或/和其他消息消費系統(tǒng)。開源ActiveMQ消費端或/和其他消息消費系統(tǒng)可以通過發(fā)送訪問請求給ActiveMQ服務器,ActiveMQ服務器針對訪問請求將消息體發(fā)送給開源ActiveMQ消費端或/和其他消息消費系統(tǒng)。
[0046]進一步的,對任務構建信息的提供裝置通過中間件將任務構建信息發(fā)送給外圍系統(tǒng)進行說明。所述任務構建信息的提供裝置根據(jù)任務構建信息構建消息體;將消息體發(fā)送到中間件的消息隊列中,以使得中間件在收到外圍系統(tǒng)發(fā)送的消息隊列訪問請求后發(fā)送消息體給外圍系統(tǒng)。具體的,所述任務構建信息的提供裝置根據(jù)任務構建信息以一定的規(guī)則構建消息體。然后,所述任務構建信息的提供裝置根據(jù)預先配置的發(fā)送條件(中間件服務器地址及消息隊列名稱),將消息體發(fā)送到中間件。最后,所述中間件根據(jù)外圍系統(tǒng)的訪問請求再將消息體發(fā)送給外圍系統(tǒng)。
[0047]進一步的,對任務構建信息的提供裝置根據(jù)任務構建信息構建消息體進行說明。所述任務構建信息的提供裝置可以以結果連接、構建節(jié)點、構建序號、構建結果、構建耗時、關聯(lián)項目ID、開始時間、結束時間、觸發(fā)方式中的至少一項構建消息體,并以JSON格式進行封裝。具體的,根據(jù)監(jiān)控及管理需要,人為選擇結果連接、構建節(jié)點、構建序號、構建結果、構建耗時、關聯(lián)項目ID、開始時間、結束時間、觸發(fā)方式中的一項或多項作為需求項目,所述任務構建信息的提供裝置根據(jù)需求項目進行消息體構建。
[0048]所述消息體可以以JSON(JavaScript Object Notat1n)格式進行封裝。JSON格式是一種輕量級的數(shù)據(jù)交換格式,它基于JavaScript (Standard ECMA-2623rdEdit1n-December 1999)的一個子集。JSON格式采用完全獨立于語言的文本格式,但是也使用了類似于C語言家族的習慣(包括C、C++、C#、Java、JavaScript、Perl、Python等)。這些特性使JSON格式成為理想的數(shù)據(jù)交換語言,易于人閱讀和編寫,同時也易于機器解析和生成(網(wǎng)絡傳輸速度快)。JSON格式可由ActiveMQ服務器進行解析和生成。
[0049]進一步的,對任務構建信息是以任務構建完成作為觸發(fā)條件確定的進行說明。所述任務構建信息是根據(jù)持續(xù)集成工具Hudson在監(jiān)控到任務構建完成后發(fā)送的信息確定的。具體的,所述任務構建信息的提供裝置以插件形式嵌入持續(xù)集成工具Hudson中,當任務構建完成后,所述持續(xù)集成工具Hudson通過Notifier繼承接入點發(fā)送信息給任務構建信息的提供裝置。所述任務構建信息的提供裝置根據(jù)信息獲取任務構建信息。
[0050]進一步的,對任務構建信息是根據(jù)持續(xù)集成工具Hudson在監(jiān)控到任務構建完成后發(fā)送的信息確定的進行說明。所述持續(xù)集成工具Hudson在監(jiān)控到任務構建完成后發(fā)送的信息為:任務構建上下文信息;所述任務構建信息的提供裝置根據(jù)任務構建上下文信息,生成任務構建信息。具體的,所述持續(xù)集成工具Hudson通過AbstractBuild提供任務構建上下文信息。其中:
[0051]通過AbstractBuild 獲取 URL 地址(Uniform Resoure Locator:統(tǒng)一資源定位器),并與持續(xù)集成工具Hudson地址拼接,獲得結果連接buiIdLink ;
[0052]通過AbstractBuild 獲得構建節(jié)點 buildNode ;
[0053]通過AbstractBuild 獲得構建序號 buiIdNum ;
[0054]通過AbstractBuild 獲得構建結果 buiIdStatus ;
[0055]通過AbstractBuild 獲得開始時間 startTime。
[0056]所述任務構建信息的提供裝置根據(jù)結果連接、構建節(jié)點、構建序號、構建結果和開始時間,生成任務構建信息。
[0057]在一種實施例中,結果連接、構建節(jié)點、構建序號、構建結果和開始時間僅為生成任務構建信息的部分參數(shù)。生成任務構建信息的參數(shù)還包括構建耗時、關聯(lián)項目ID、結束時間、觸發(fā)方式。
[0058]所述任務構建信息的提供裝置根據(jù)持續(xù)集成工具Hudson配置信息,獲得關聯(lián)項目 ID jobID 和觸發(fā)方式 triggerType ;
[0059]所述任務構建信息的提供裝置通過訪問持續(xù)集成工具Hudson,獲得當前時間,即為結束時間stopTime ;
[0060]所述任務構建信息的提供裝置將結束時間減去開始時間,獲得構建耗時buildTimeTrend。
[0061]所述任務構建信息的提供裝置根據(jù)結果連接、構建節(jié)點、構建序號、構建結果、開始時間、構建耗時、關聯(lián)項目ID、結束時間和觸發(fā)方式,生成任務構建信息。
[0062]如圖2所示,在一種實施例中,首先,任務構建信息的提供裝置在任務構建完成后獲取ActiveMQ服務器地址及消息隊列名稱。然后,任務構建信息的提供裝置通過持續(xù)集成工具Hudson提供的任務構建上下文信息及配置信息獲取并計算,而獲得任務構建信息。而后,任務構建信息的提供裝置根據(jù)任務構建信息構建消息體。最后,任務構建信息的提供裝置將消息體發(fā)送至ActiveMQ服務器。
[0063]以上為本申請實施例提供的任務構建信息的提供方法,本領域相關技術人員應能理解,本申請實施例還對應提供一種任務構建信息的提供裝置100,如圖4所示。
[0064]圖4是本申請實施例提供的一種任務構建信息的提供裝置100的系統(tǒng)結構圖。
[0065]圖5是本申請實施例提供的一種任務構建信息的提供裝置100與持續(xù)集成工具Hudson200、外圍系統(tǒng)300、中間件400的連接示意圖。
[0066]所述任務構建信息的提供裝置100,包括:
[0067]獲取模塊101,用于獲取任務構建信息;其中任務構建信息是以任務構建完成作為觸發(fā)條件確定的。
[0068]發(fā)送模塊102,用于將任務構建信息發(fā)送給外圍系統(tǒng)300。
[0069]所述發(fā)送模塊102具體用于,通過中間件400,將任務構建信息發(fā)送給外圍系統(tǒng)300。
[0070]所述裝置還包括:
[0071]構建模塊103,用于根據(jù)任務構建信息構建消息體;
[0072]所述發(fā)送模塊102具體用于,將構建模塊103構建的消息體發(fā)送到中間件400的消息隊列,以使得中間件400在收到外圍系統(tǒng)300發(fā)送的消息隊列訪問請求后發(fā)送消息體給外圍系統(tǒng)300。
[0073]所述構建模塊103具體用于,以結果連接、構建節(jié)點、構建序號、構建結果、構建耗時、關聯(lián)項目ID、開始時間、結束時間、觸發(fā)方式中的至少一項構建消息體,并以JSON格式進行封裝。
[0074]所述獲取模塊101具體用于,根據(jù)持續(xù)集成工具Hudson 200在監(jiān)控到任務構建完成后發(fā)送的信息確定任務構建信息。
[0075]所述持續(xù)集成工具Hudson 200在監(jiān)控到任務構建完成后發(fā)送的信息為:任務構建上下文信息。所述獲取模塊101具體用于,根據(jù)任務構建上下文信息,生成任務構建信息。
[0076]圖6是本申請實施例提供的另一種任務構建信息的提供方法的流程示意圖。
[0077]所述任務構建信息的提供方法具體包括以下步驟:
[0078]S201:持續(xù)集成系統(tǒng)構建任務,并監(jiān)控任務構建狀態(tài)。
[0079]在一種實施例中,執(zhí)行主體為持續(xù)集成系統(tǒng)。所述持續(xù)集成系統(tǒng)包括持續(xù)集成工具Hudson和任務構建信息的提供裝置。所述持續(xù)集成工具Hudson構建任務,并監(jiān)控任務構建狀態(tài)。
[0080]S202:持續(xù)集成系統(tǒng)在監(jiān)控到任務構建完成后,獲得任務構建信息。
[0081]所述持續(xù)集成工具Hudson在監(jiān)控到任務構建完成后,通過Notifier集成接入點發(fā)送信息給任務構建信息的提供裝置。所述任務構建信息的提供裝置根據(jù)信息獲取任務構建信息。
[0082]S203:持續(xù)集成系統(tǒng)將任務構建信息發(fā)送給外圍系統(tǒng)。
[0083]進一步,對步驟S203中持續(xù)集成系統(tǒng)將任務構建信息發(fā)送給外圍系統(tǒng)進行說明。所述任務構建信息的提供裝置通過中間件,將任務構建信息發(fā)送給外圍系統(tǒng)。具體的,所述任務構建信息的提供裝置在獲得任務構建信息以后,先發(fā)送給中間件,再由中間件根據(jù)條件轉發(fā)給外圍系統(tǒng)。
[0084]進一步,對持續(xù)集成系統(tǒng)通過中間件將任務構建信息發(fā)送給外圍系統(tǒng)進行說明。所述任務構建信息的提供裝置根據(jù)任務構建信息構建消息體;將消息體發(fā)送到中間件的消息隊列中,以使得中間件在收到外圍系統(tǒng)發(fā)送的消息隊列訪問請求后發(fā)送消息體給外圍系統(tǒng)。
[0085]進一步,對持續(xù)集成系統(tǒng)根據(jù)任務構建信息構建消息體進行說明。所述任務構建信息的提供裝置以結果連接、構建節(jié)點、構建序號、構建結果、構建耗時、關聯(lián)項目ID、開始時間、結束時間、觸發(fā)方式中的至少一項構建消息體,并以JSON格式進行封裝。
[0086]進一步,對持續(xù)集成系統(tǒng)獲得任務構建信息進行說明。所述持續(xù)集成工具Hudson在監(jiān)控到任務構建完成后,生成任務構建上下文信息,并將任務構建上下文信息發(fā)送給任務構建信息的提供裝置。所述任務構建信息的提供裝置根據(jù)任務構建上下文信息,生成任務構建信息。具體的,所述持續(xù)集成工具Hudson在監(jiān)控到任務構建完成后,通過AbstractBui Id提供任務構建上下文信息。在一種實施例中,生成任務構建信息的參數(shù)還包括其他信息,其他信息根據(jù)持續(xù)集成工具Hudson的配置信息、訪問持續(xù)集成工具Hudson系統(tǒng)或計算可獲得。所述任務構建信息的提供裝置根據(jù)任務構建上下文信息和其他信息,生成任務構建信息。
[0087]圖7是本申請實施例提供的一種持續(xù)集成系統(tǒng)的系統(tǒng)結構圖。
[0088]所述持續(xù)集成系統(tǒng),包括:
[0089]持續(xù)集成工具11,用于構建任務,并監(jiān)控任務構建狀態(tài);
[0090]任務構建?目息的提供裝置12,用于在任務構建完成后,獲得任務構建彳目息,將任務構建信息發(fā)送給外圍系統(tǒng)20。
[0091]所述任務構建信息的提供裝置12包括:
[0092]獲取模塊121,用于在任務構建完成后,獲取任務構建信息;
[0093]發(fā)送模塊122,用于將任務構建信息發(fā)送給外圍系統(tǒng)20。
[0094]所述發(fā)送模塊122具體用于,通過中間件30,將任務構建信息發(fā)送給外圍系統(tǒng)20。
[0095]所述任務構建信息的提供裝置12還包括:
[0096]構建模塊123,用于根據(jù)任務構建信息構建消息體;
[0097]所述發(fā)送模塊122具體用于,將構建模塊123構建的消息體發(fā)送到中間件30的消息隊列,以使得中間件30在收到外圍系統(tǒng)20發(fā)送的消息隊列訪問請求后發(fā)送消息體給外圍系統(tǒng)20。
[0098]所述構建模塊123具體用于,以結果連接、構建節(jié)點、構建序號、構建結果、構建耗時、關聯(lián)項目ID、開始時間、結束時間、觸發(fā)方式中的至少一項構建消息體,并以JSON格式進行封裝。
[0099]所述持續(xù)集成工具11具體用于,在任務構建完成后生成任務構建上下文信息,并將任務構建上下文信息發(fā)送給任務構建信息的提供裝置12 ;
[0100]所述獲取模塊121具體用于,根據(jù)任務構建上下文信息,生成任務構建信息。
[0101]進一步的,所述持續(xù)集成工具11為持續(xù)集成工具Hudson。
[0102]本申請實施例中,持續(xù)集成工具Hudson完成任務構建后即觸發(fā)任務構建信息的提供裝置進行工作,任務構建信息的提供裝置獲取任務構建信息后,將任務構建信息發(fā)送給外圍系統(tǒng)。因此,本申請實施例可避免外圍系統(tǒng)定時輪詢持續(xù)集成工具Hudson或持續(xù)集成系統(tǒng),而造成巨大資源消耗的發(fā)生。
[0103]本領域內(nèi)的技術人員應明白,本發(fā)明的實施例可提供為方法、系統(tǒng)、或計算機程序產(chǎn)品。因此,本發(fā)明可采用完全硬件實施例、完全軟件實施例、或結合軟件和硬件方面的實施例的形式。而且,本發(fā)明可采用在一個或多個其中包含有計算機可用程序代碼的計算機可用存儲介質(zhì)(包括但不限于磁盤存儲器、CD-ROM、光學存儲器等)上實施的計算機程序產(chǎn)品的形式。
[0104]本發(fā)明是參照根據(jù)本發(fā)明實施例的方法、設備(系統(tǒng))、和計算機程序產(chǎn)品的流程圖和/或方框圖來描述的。應理解可由計算機程序指令實現(xiàn)流程圖和/或方框圖中的每一流程和/或方框、以及流程圖和/或方框圖中的流程和/或方框的結合??商峁┻@些計算機程序指令到通用計算機、專用計算機、嵌入式處理機或其他可編程數(shù)據(jù)處理設備的處理器以產(chǎn)生一個機器,使得通過計算機或其他可編程數(shù)據(jù)處理設備的處理器執(zhí)行的指令產(chǎn)生用于實現(xiàn)在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能的裝置。
[0105]這些計算機程序指令也可存儲在能引導計算機或其他可編程數(shù)據(jù)處理設備以特定方式工作的計算機可讀存儲器中,使得存儲在該計算機可讀存儲器中的指令產(chǎn)生包括指令裝置的制造品,該指令裝置實現(xiàn)在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能。
[0106]這些計算機程序指令也可裝載到計算機或其他可編程數(shù)據(jù)處理設備上,使得在計算機或其他可編程設備上執(zhí)行一系列操作步驟以產(chǎn)生計算機實現(xiàn)的處理,從而在計算機或其他可編程設備上執(zhí)行的指令提供用于實現(xiàn)在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能的步驟。
[0107]在一個典型的配置中,計算設備包括一個或多個處理器(CPU)、輸入/輸出接口、網(wǎng)絡接口和內(nèi)存。
[0108]內(nèi)存可能包括計算機可讀介質(zhì)中的非永久性存儲器,隨機存取存儲器(RAM)和/或非易失性內(nèi)存等形式,如只讀存儲器(ROM)或閃存(flash RAM)。內(nèi)存是計算機可讀介質(zhì)的示例。
[0109]計算機可讀介質(zhì)包括永久性和非永久性、可移動和非可移動媒體可以由任何方法或技術來實現(xiàn)信息存儲。信息可以是計算機可讀指令、數(shù)據(jù)結構、程序的模塊或其他數(shù)據(jù)。計算機的存儲介質(zhì)的例子包括,但不限于相變內(nèi)存(PRAM)、靜態(tài)隨機存取存儲器(SRAM)、動態(tài)隨機存取存儲器(DRAM)、其他類型的隨機存取存儲器(RAM)、只讀存儲器(ROM)、電可擦除可編程只讀存儲器(EEPROM)、快閃記憶體或其他內(nèi)存技術、只讀光盤只讀存儲器(CD-R0M)、數(shù)字多功能光盤(DVD)或其他光學存儲、磁盒式磁帶,磁帶磁磁盤存儲或其他磁性存儲設備或任何其他非傳輸介質(zhì),可用于存儲可以被計算設備訪問的信息。按照本文中的界定,計算機可讀介質(zhì)不包括暫存電腦可讀媒體(transitory media),如調(diào)制的數(shù)據(jù)信號和載波。
[0110]還需要說明的是,術語“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、商品或者設備不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、商品或者設備所固有的要素。在沒有更多限制的情況下,由語句“包括一個……”限定的要素,并不排除在包括所述要素的過程、方法、商品或者設備中還存在另外的相同要素。
[0111]本領域技術人員應明白,本申請的實施例可提供為方法、系統(tǒng)或計算機程序產(chǎn)品。因此,本申請可采用完全硬件實施例、完全軟件實施例或結合軟件和硬件方面的實施例的形式。而且,本申請可采用在一個或多個其中包含有計算機可用程序代碼的計算機可用存儲介質(zhì)(包括但不限于磁盤存儲器、CD-ROM、光學存儲器等)上實施的計算機程序產(chǎn)品的形式。
[0112]以上所述僅為本申請的實施例而已,并不用于限制本申請。對于本領域技術人員來說,本申請可以有各種更改和變化。凡在本申請的精神和原理之內(nèi)所作的任何修改、等同替換、改進等,均應包含在本申請的權利要求范圍之內(nèi)。
【主權項】
1.一種任務構建信息的提供方法,其特征在于,包括: 獲得任務構建信息;其中所述任務構建信息是以任務構建完成作為觸發(fā)條件確定的; 將所述任務構建信息發(fā)送給外圍系統(tǒng)。2.如權利要求1所述的方法,其特征在于, 將所述任務構建信息發(fā)送給外圍系統(tǒng),具體包括: 通過中間件,將所述任務構建信息發(fā)送給所述外圍系統(tǒng)。3.如權利要求2所述的方法,其特征在于, 通過中間件,將所述任務構建信息發(fā)送給所述外圍系統(tǒng),具體包括: 根據(jù)所述任務構建信息構建消息體; 將所述消息體發(fā)送到所述中間件的消息隊列中,以使得所述中間件在收到所述外圍系統(tǒng)發(fā)送的消息隊列訪問請求后發(fā)送所述消息體給所述外圍系統(tǒng)。4.如權利要求3所述的方法,其特征在于, 根據(jù)所述任務構建信息構建消息體,具體包括: 以結果連接、構建節(jié)點、構建序號、構建結果、構建耗時、關聯(lián)項目ID、開始時間、結束時間、觸發(fā)方式中的至少一項構建所述消息體,并以JSON格式進行封裝; 將所述消息體發(fā)送到所述中間件的消息隊列中,具體包括: 將以JSON格式進行封裝的所述消息體發(fā)送到所述中間件的消息隊列中。5.如權利要求1-4中任意一項所述的方法,其特征在于, 所述任務構建信息是以任務構建完成作為觸發(fā)條件確定的,具體包括: 所述任務構建信息是根據(jù)持續(xù)集成工具Hudson在監(jiān)控到任務構建完成后發(fā)送的信息確定的。6.如權利要求5所述的方法,其特征在于,持續(xù)集成工具Hudson在監(jiān)控到任務構建完成后發(fā)送的信息為:任務構建上下文信息; 獲得任務構建信息,具體包括: 根據(jù)所述任務構建上下文信息,生成所述任務構建信息。7.一種任務構建信息的提供裝置,其特征在于,包括: 獲取模塊,用于獲取任務構建信息;其中所述任務構建信息是以任務構建完成作為觸發(fā)條件確定的; 發(fā)送模塊,用于將所述任務構建信息發(fā)送給外圍系統(tǒng)。8.如權利要求7所述的裝置,其特征在于, 所述發(fā)送模塊具體用于,通過中間件,將所述任務構建信息發(fā)送給所述外圍系統(tǒng)。9.如權利要求8所述的裝置,其特征在于,所述裝置還包括: 構建模塊,用于根據(jù)所述任務構建信息構建消息體; 所述發(fā)送模塊具體用于,將所述構建模塊構建的消息體發(fā)送到所述中間件的消息隊列,以使得所述中間件在收到所述外圍系統(tǒng)發(fā)送的消息隊列訪問請求后發(fā)送所述消息體給所述外圍系統(tǒng)。10.如權利要求9所述的裝置,其特征在于, 所述構建模塊具體用于,以結果連接、構建節(jié)點、構建序號、構建結果、構建耗時、關聯(lián)項目ID、開始時間、結束時間、觸發(fā)方式中的至少一項構建所述消息體,并以JSON格式進行封裝; 所述發(fā)送模塊具體用于,將所述構建模塊構建的、以JSON格式進行封裝的消息體發(fā)送到所述中間件的消息隊列。11.如權利要求7-10中的任意一項所述的裝置,其特征在于, 所述獲取模塊具體用于,根據(jù)持續(xù)集成工具Hudson在監(jiān)控到任務構建完成后發(fā)送的信息確定所述任務構建信息。12.如權利要求11所述的裝置,其特征在于, 所述持續(xù)集成工具Hudson在監(jiān)控到任務構建完成后發(fā)送的信息為:任務構建上下文信息; 所述獲取模塊具體用于,根據(jù)所述任務構建上下文信息,生成所述任務構建信息。13.一種任務構建信息的提供方法,其特征在于,包括: 構建任務,并監(jiān)控任務構建狀態(tài); 在監(jiān)控到任務構建完成后,獲得任務構建信息; 將所述任務構建信息發(fā)送給外圍系統(tǒng)。14.如權利要求13所述的方法,其特征在于, 將任務構建信息發(fā)送給外圍系統(tǒng),具體包括: 通過中間件,將所述任務構建信息發(fā)送給所述外圍系統(tǒng)。15.如權利要求14所述的方法,其特征在于, 通過中間件,將所述任務構建信息發(fā)送給所述外圍系統(tǒng),具體包括: 根據(jù)所述任務構建信息構建消息體; 將所述消息體發(fā)送到所述中間件的消息隊列中,以使得所述中間件在收到所述外圍系統(tǒng)發(fā)送的消息隊列訪問請求后發(fā)送所述消息體給所述外圍系統(tǒng)。16.如權利要求15所述的方法,其特征在于, 根據(jù)所述任務構建信息構建消息體;具體包括: 以結果連接、構建節(jié)點、構建序號、構建結果、構建耗時、關聯(lián)項目ID、開始時間、結束時間、觸發(fā)方式中的至少一項構建所述消息體,并以JSON格式進行封裝; 將所述消息體發(fā)送到所述中間件的消息隊列中,具體包括: 將以JSON格式進行封裝的所述消息體發(fā)送到所述中間件的消息隊列中。17.如權利要求13-16中任意一項所述的方法,其特征在于, 獲得任務構建信息,具體包括: 在任務構建完成后生成任務構建上下文信息; 根據(jù)所述任務構建上下文信息,生成所述任務構建信息。
【文檔編號】G06F9/44GK105843597SQ201510024456
【公開日】2016年8月10日
【申請日】2015年1月16日
【發(fā)明人】魯小川, 何衛(wèi)龍
【申請人】阿里巴巴集團控股有限公司