GitLab CI/CD 是一個內置在GitLab中的工具,用於通過持續方法進行軟件開發:
持續集成的工作原理是將小的代碼塊推送到Git倉庫中托管的應用程序代碼庫中,並且每次推送時,都要運行一系列腳本來構建、測試和驗證代碼更改,然後再將其合並到主分支中。
持續交付和部署相當於更進一步的CI,可以在每次推送到倉庫默認分支的同時將應用程序部署到生產環境。
這些方法使得可以在開發周期的早期發現bugs和errors,從而確保部署到生產環境的所有代碼都符合為應用程序建立的代碼標準。
GitLab CI/CD 由一個名為 .gitlab-ci.yml 的文件進行配置,改文件位於倉庫的根目錄下。文件中指定的腳本由GitLab Runner執行。
軟件開發的持續方法基於自動執行腳本,以最大程度地減少在開發應用程序時引入錯誤的機會。從開發新代碼到部署新代碼,他們幾乎不需要人工幹預,甚至根本不需要幹預。
它涉及到在每次小的迭代中就不斷地構建、測試和部署代碼更改,從而減少瞭基於已經存在bug或失敗的先前版本開發新代碼的機會。
Continuous Integration(持續集成)
假設一個應用程序,其代碼存儲在GitLab的Git倉庫中。開發人員每天都要多次推送代碼更改。對於每次向倉庫的推送,你都可以創建一組腳本來自動構建和測試你的應用程序,從而減少瞭向應用程序引入錯誤的機會。這種做法稱為持續集成,對於提交給應用程序(甚至是開發分支)的每項更改,它都會自動連續進行構建和測試,以確保所引入的更改通過你為應用程序建立的所有測試,準則和代碼合規性標準。
Continuous Delivery(持續交付)
持續交付是超越持續集成的更進一步的操作。應用程序不僅會在推送到代碼庫的每次代碼更改時進行構建和測試,而且,盡管部署是手動觸發的,但作為一個附加步驟,它也可以連續部署。此方法可確保自動檢查代碼,但需要人工幹預才能從策略上手動觸發以必輸此次變更。
Continuous Deployment(持續部署)
與持續交付類似,但不同之處在於,你無需將其手動部署,而是將其設置為自動部署。完全不需要人工幹預即可部署你的應用程序。
1.1. GitLab CI/CD 是如何工作的
為瞭使用GitLab CI/CD,你需要一個托管在GitLab上的應用程序代碼庫,並且在根目錄中的.gitlab-ci.yml文件中指定構建、測試和部署的腳本。
在這個文件中,你可以定義要運行的腳本,定義包含的依賴項,選擇要按順序運行的命令和要並行運行的命令,定義要在何處部署應用程序,以及指定是否 要自動運行腳本或手動觸發腳本。
為瞭可視化處理過程,假設添加到配置文件中的所有腳本與在計算機的終端上運行的命令相同。
一旦你已經添加瞭.gitlab-ci.yml到倉庫中,GitLab將檢測到該文件,並使用名為GitLab Runner的工具運行你的腳本。該工具的操作與終端類似。
這些腳本被分組到jobs,它們共同組成一個pipeline。一個最簡單的.gitlab-ci.yml文件可能是這樣的:
before_script:
- apt-get install rubygems ruby-dev -y
run-test:
script:
- ruby --version 6
(報告出品方/作者:開源證券,諸海濱,趙昊)1、公司情況:深耕智能終端產品,2021年營收上漲39%1.1、發展歷程:成立於2011...