Jenkins 使用 Pipeline Utility Steps 來異動 json 檔案

RojerChen.2020.04.17

Jenkins 要怎樣才可以讀寫 appsettings.json 的檔案?

使用情境

網頁前端會讀取 appsettings.json 這個檔,並且將目前程式的版本顯示在網頁上。我希望每次使用 Jenkins 部屬程式的時候,可以將目前 Build 的版號更新到 appsettings.json,讓我的網頁前端可以知道目前的版本號是哪一個。

找了好久才發現到原來使用 Pipeline Utility Steps 就可以達到這樣的功能了。

  1. 安裝 Pipeline Utility Steps

    安裝這個套件的用意在於我們可以使用 readJSON 和 writeJSON 的功能來去更改 json 檔案。

  2. 調整 Pipeline 程式

    不知道如何撰寫可以參考一下官網的說明



    像我的程式大概就是這樣,這樣我 version 這個欄位就可以帶入 Jenkins build 的版本號。

    jsonfile = readJSON file: path
    jsonfile.version = "${BUILD_ID}".inspect()
    writeJSON file: path, json: jsonfile

  3. 調整 In-process Script Approval 設定

    一開始執行的時候,可能會跑失敗,這時可以看一下 Console OutputConsole Output,大概會顯示下面這樣的訊息

    Scripts not permitted to use staticMethod org.codehaus.groovy.runtime.DefaultGroovyMethods inspect java.lang.Object. Administrators can decide whether to approve or reject this signature. 如果有這樣的訊息,可以點選上面的連結或是去系統的這個地方做設定,設定完畢後去看一下 appsettings.json 檔案,就會發現檔案的內容已經依照你要設定的方式做異動了

    Blogger Comment

0 意見: