CICD相關服務介紹
CICD相關服務介紹
CI/CD能夠大幅增加軟體開發的效率以及穩定度, 可以使用的解決方案也很多, 這邊列出一些常見的以及用途範圍。
程式碼版控:
AWS Code Commit AWS原生的版控系統, 可以與Git無痛接軌
Github 最大的程式碼存放網站, 目前免費版的專案也可以開無限個private儲存庫, 唯有一些功能需要付費。
Bitbucket 另外一個使用Git的雲端儲存庫, 也可以開無限的private儲存庫。
Gitlab, Gitea 可以讓用戶自己架設在地端
CI:
AWS CodeBuild 適用於CodeCommit, S3, Github, Bitbucket, 可使用linux/windows配合不同docker image編譯
Jenkins CI 老牌的開源工具, 讓用戶安裝在地端進行CICD, 本身具跨平台優勢, 也可以用多主機架構來分配工作進行持續交付, 適合公司想搭建內部CICD伺服器使用。
Travis CI 僅適用於Github, 但使用者數量多, 使用上也較穩定, 不過C# .net方面由於是在linux上編譯, 可能會有問題 免費版可以對public的儲存庫無限使用, private則每個帳號有100次試用。
Appveyor 有多個Source來源可以選擇 對windows的編譯支援度較高, 價格上也比Travis CI略便宜
Circle CI 可使用於Github, Bitbucket 免費版有提供private儲存庫的支援, 採每月次數限制的
Drone.io 支援GitHub, GitHubEnterprise, Bitbucket, GitLab, 可以架設在地端
CD:
- AWS CodeDeploy 透過S3抓取部署包, 可以設定部署方式(直接替換, 藍綠部署), 以及部署過程中流量分配方式。 各CI平台可以透過Plugin放置部署包, 呼叫CodeDeploy進行部署
整合服務:
- AWS CodePipeline 可以透過原始碼來源(CodeCommit, S3, Github, Bitbucket)變更時候, 觸發AWS CodeBuild, CodeDeploy 完成整個伺服器的部署更新。
Email