CircleCI 提供基於 Windows 虛擬機的 CI/CD 流水線

近期,CircleCI宣佈支持Windows,這是繼Linux、Docker和macOS之後進一步的執行環境支持。CircleCI對Windows的支持,使用戶可在Windows虛擬機中運行CI/CD流水線。

當前,CircleCI提供對Windows Server 2019的支持,涵蓋了.NET、Visual Studio、Windows SDK、Docker for Windows、跨平臺工作空間和緩存等。

據Rob Zuber(CircleCI CTO)介紹:

近幾年,我們知悉客戶有基於Windows構建項目的需求。 我們很高興能與Microsoft生態系統互動,幫助那些使用Windows、Azure、.NET等Microsoft技術棧技術的用戶更快地交付軟件。隨着我們自身Windows解決方案的改進,期待能進一步推動在Microsoft生態系統中的創新。

下面是Windows上CircleCI平臺示意圖:

CircleCI支持Windows平臺的一些關鍵特性包括:

  • 基於虛擬機的Windows任務,提供完全獨立的構建;
  • 爲每個新任務提供乾淨的環境。該環境在運行時構建,並在任務結束時回收。這確保了構建的可重現性、代碼和數據的安全性,以及CI環境的私密性。
  • CircleCI的Windows環境還涵蓋了對Docker Engine的支持,提供基於Docker的企業級Windows工作流。
  • 所有CircleCI特性,包括緩存、工作空間、任務審批和場景(Contexts)等,同樣也適用於Windows任務,並提供同等的支持和UI。

下面給出的是.circleci/config.yml文件的部分配置。該文件支持使用三種腳本(PowerShell、Bash和命令行)在Windows上運行任務:

version: 2.1

orbs:
  win: circleci/[email protected]

jobs:
  build:
    executor:
      name: win/vs2019
      shell: bash.exe
    steps:
      - checkout
      - run: ls -lah
      - run:
          command: ping circleci.com
          shell: cmd.exe
      - run:
          command: echo 'This is powershell'
          shell: powershell.exe

Windows鏡像中一併提供了一些預裝軟件,其中包括Windows Server 2019 Core Datacenter Edition、Visual Studio 2019 Community Edition、Shells、.NET Framework 4.8、.NET Core, Git 2.22.0、Git LFS 2.7.2、Windows 10 SDK、Docker Engine( Enterprise version 18.09.7)、NuGet CLI 5.2.0.6090、Chocolatey v0.10.15、Azure Service Fabric、OpenJDK 12.0.2、node.js v12.8.0、Ruby 2.6.3、Go 1.12.7、nano 2.5.3、vim 8.0.604和jq 1.5等。

CircleCI支持Windows的更多細節,可參見官方文檔

原文鏈接:

Introducing CircleCI Windows Support, a CI/CD Pipeline on a Windows Virtual Machine

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章