• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            eryar

            PipeCAD - Plant Piping Design Software.
            RvmTranslator - Translate AVEVA RVM to OBJ, glTF, etc.
            posts - 603, comments - 590, trackbacks - 0, articles - 0

            Jenkins in OpenCASCADE

            Posted on 2017-12-03 12:15 eryar 閱讀(1296) 評(píng)論(0)  編輯 收藏 引用 所屬分類: 2.OpenCASCADE

            Jenkins in OpenCASCADE

            eryar@163.com

            Abstract. Jenkins是一個(gè)開源軟件項(xiàng)目,是基于Java開發(fā)的一個(gè)持續(xù)集成工具,用于監(jiān)控持續(xù)復(fù)制的工作,旨在提供一個(gè)開放易用的軟件平臺(tái),使軟件的持續(xù)集成變成可能。

            Key Words. OpenCASCADE, Jenkins

            1.Introduction

            OpenCASCADE的開發(fā)代碼量較大,如何確保程序的持續(xù)集成開發(fā),保證質(zhì)量,必須借助于工具了。像源碼的管理使用了Git,Bug管理使用了Mantis Bug Tracker, 還使用了Jenkins:

            https://tracker.dev.opencascade.org/view.php?id=25609

            wps_clip_image-18943

            關(guān)于Jenkins的功能介紹,以下內(nèi)容轉(zhuǎn)換自:

            http://www.cnblogs.com/clsn/p/7944116.html

            wps_clip_image-15698

            Jenkins是一個(gè)用Java編寫的開源的持續(xù)集成工具。在與Oracle發(fā)生爭執(zhí)后,項(xiàng)目從Hudson項(xiàng)目獨(dú)立。

            Jenkins提供了軟件開發(fā)的持續(xù)集成服務(wù)。它運(yùn)行在Servlet容器中(例如Apache Tomcat)。它支持軟件配置管理(SCM)工具(包括AccuRev SCM、CVS、Subversion、Git、Perforce、Clearcase和RTC),可以執(zhí)行基于Apache Ant和Apache Maven的項(xiàng)目,以及任意的Shell腳本和Windows批處理命令。Jenkins的主要開發(fā)者是川口耕介。Jenkins是在MIT許可證下發(fā)布的自由軟件。

            1.1.1 Jenkins功能

            1、持續(xù)的軟件版本發(fā)布/測試項(xiàng)目。

            2、監(jiān)控外部調(diào)用執(zhí)行的工作。

            1.2 怎么理解持續(xù)集成、持續(xù)交付、持續(xù)部署呢?

            1.2.1 持續(xù)集成

            持續(xù)集成(英語:Continuous integration,縮寫為 CI),一種軟件工程流程,將所有工程師對(duì)于軟件的工作復(fù)本,每天集成數(shù)次到共用主線(mainline)上。

            這個(gè)名稱最早由葛來迪·布區(qū)(Grady Booch)在他的布區(qū)方法中提出,但是他并沒有提到要每天集成數(shù)次。之后成為極限編程(extreme programming,縮寫為XP)的一部分。在測試驅(qū)動(dòng)開發(fā)(TDD)的作法中,通常還會(huì)搭配自動(dòng)單元測試。

            持續(xù)集成的提出,主要是為了解決軟件進(jìn)行系統(tǒng)集成時(shí)面臨的各項(xiàng)問題,極限編程稱這些問題為集成地獄(integration hell)。

            wps_clip_image-28371

            持續(xù)集成主要是強(qiáng)調(diào)開發(fā)人員提交了新代碼之后,立刻進(jìn)行構(gòu)建、(單元)測試。根據(jù)測試結(jié)果,我們可以確定新代碼和原有代碼能否正確地集成在一起。簡單來講就是:頻繁地(一天多次)將代碼集成到主干。

            持續(xù)集成目的在產(chǎn)生以下效益如:

            ü 及早發(fā)現(xiàn)集成錯(cuò)誤且由于修訂的內(nèi)容較小所以易于追蹤,這可以節(jié)省項(xiàng)目的時(shí)間與成本。

            ü 避免發(fā)布日期的前一分鐘發(fā)生混亂,當(dāng)每個(gè)人都會(huì)嘗試為他們所造成的那一點(diǎn)點(diǎn)不兼容的版本做檢查。

            ü 當(dāng)單元測試失敗或發(fā)生錯(cuò)誤,若開發(fā)人員需要在不除錯(cuò)的情況下還原代碼庫到一個(gè)沒有問題的狀態(tài),只需要放棄一小部分的更改 (因?yàn)榧傻拇螖?shù)頻繁)。

            ü 讓 "最新" 的程序可保持可用的狀態(tài)供測試、展示或發(fā)布用。

            ü 頻繁的提交代碼會(huì)促使開發(fā)人員創(chuàng)建模塊化,低復(fù)雜性的代碼。

            ü 防止分支大幅偏離主干。如果不是經(jīng)常集成,主干又在不斷更新,會(huì)導(dǎo)致以后集成的難度變大,甚至難以集成。

            1.2.2 持續(xù)交付

            持續(xù)交付(英語:Continuous delivery,縮寫為 CD),是一種軟件工程手法,讓軟件產(chǎn)品的產(chǎn)出過程在一個(gè)短周期內(nèi)完成,以保證軟件可以穩(wěn)定、持續(xù)的保持在隨時(shí)可以釋出的狀況。

            它的目標(biāo)在于讓軟件的建置、測試與釋出變得更快以及更頻繁。這種方式可以減少軟件開發(fā)的成本與時(shí)間,減少風(fēng)險(xiǎn)。

            wps_clip_image-31570

            持續(xù)交付在持續(xù)集成的基礎(chǔ)上,將集成后的代碼部署到更貼近真實(shí)運(yùn)行環(huán)境的「類生產(chǎn)環(huán)境」(production-like environments)中。比如,我們完成單元測試后,可以把代碼部署到連接數(shù)據(jù)庫的Staging 環(huán)境中更多的測試。如果代碼沒有問題,可以繼續(xù)手動(dòng)部署到生產(chǎn)環(huán)境中。

            1.2.3 持續(xù)部署

            持續(xù)部署(英語:Continuous Deployment,縮寫為 CD),是持續(xù)交付的下一步,指的是代碼通過評(píng)審以后,自動(dòng)部署到生產(chǎn)環(huán)境。

            有時(shí)候,持續(xù)部署也與持續(xù)交付混淆。持續(xù)部署意味著所有的變更都會(huì)被自動(dòng)部署到生產(chǎn)環(huán)境中。持續(xù)交付意味著所有的變更都可以被部署到生產(chǎn)環(huán)境中,但是出于業(yè)務(wù)考慮,可以選擇不部署。如果要實(shí)施持續(xù)部署,必須先實(shí)施持續(xù)交付。

            wps_clip_image-26753

            持續(xù)部署即在持續(xù)交付的基礎(chǔ)上,把部署到生產(chǎn)環(huán)境的過程自動(dòng)化。

            2.結(jié)論

            開源OpenCASCADE團(tuán)隊(duì)使用的工具對(duì)提高代碼質(zhì)量很有幫助,可以借鑒他們的開發(fā)方法。

            国内精品久久久久久99| 日本久久中文字幕| 亚洲精品美女久久久久99| 久久精品成人欧美大片| AV无码久久久久不卡网站下载| 激情伊人五月天久久综合| 国产成人精品久久亚洲高清不卡 国产成人精品久久亚洲高清不卡 国产成人精品久久亚洲 | 亚洲国产日韩综合久久精品| 亚洲AV无码久久精品蜜桃| 国产精品一久久香蕉国产线看| 国产精品美女久久久久AV福利| 中文字幕久久亚洲一区| 97超级碰碰碰碰久久久久| 中文国产成人精品久久亚洲精品AⅤ无码精品 | 国产精品久久久久jk制服| 久久久久九九精品影院| 久久精品国产亚洲精品2020 | 精品久久久无码中文字幕| 色综合久久综合中文综合网| 精品乱码久久久久久夜夜嗨 | 国产免费久久精品99久久| 亚洲AV无码一区东京热久久| 久久人人爽人人精品视频| 人妻精品久久久久中文字幕69| 天堂无码久久综合东京热| 国产午夜福利精品久久2021 | 久久夜色精品国产欧美乱| 久久久一本精品99久久精品88| 久久精品无码专区免费| 国产成人综合久久久久久| 久久亚洲综合色一区二区三区| 久久国产亚洲高清观看| 日韩精品久久无码中文字幕| 97精品依人久久久大香线蕉97| 一级女性全黄久久生活片免费 | 久久精品国产一区二区三区日韩| 亚洲第一极品精品无码久久| 中文字幕无码av激情不卡久久| 欧美无乱码久久久免费午夜一区二区三区中文字幕 | 一本色道久久99一综合| 久久受www免费人成_看片中文|