Jenkins 2 如何使用 PowerShell 以及自定 build fail (指定 exit code)

Jenkins 除了用來做為 CI(持續性整合) 工具外,也可以與其他 plugin 配合達成其他目的(e.g.IIS restart、檔案壓縮備份…),今天就來看看可以怎麼與 PowerShell 整合執行 PowerShell 指令

文章大綱

  1. 安裝 PowerShell plugin
  2. 設定 Powershell plugin
  3. PowerShell 丟出 build fail

1. 安裝 PowerShell plugin

  1. Manage Jenkins –> Manage Plugins

    1plugins

  2. Available –> Filter

    2install

2. 設定 Powershell plugin

  1. Build –> ADD BUILD STEP –> Windows PowerShell

    3powershellsetting

  2. Command

    直接寫 Powershell 語法

    4commnad

3. PowerShell 丟出 build fail

預設情況 Jenkins 只要有執行 PowerShell,不論是否正確執行皆會視為 SUCCESS,所以需要手動拋出 build fail

5alwayserror

  • 手動拋出錯誤(使用 try catch 為例)

    • 將 PowerShell 實際執行的 command 用 try catch 包
    • catch 區段 丟出 exit 1 以通知 Jenkins 拋出 build fail

      Try
      {
          Get-Content C:\securestringa.txt  -ErrorAction Stop
      }
      Catch
      {
          write-output "get data fail!"
          exit 1
      }
      

      6error

參考資料

  1. PowerShell Plugin