簡體   English   中英

Hudson / Jenkins插件開發:如何獲取其他插件的環境變量

[英]Hudson/Jenkins Plugin development: how to get environment variables of other plugin

我有點老Hudson配置。 我們有一個內部開發的插件,可以查詢Nexus存儲庫並設置一些作業參數。 這個插件是用Java編寫的。

我們還使用depreacated SetEnv Plugin ,我們在其中設置了一堆環境變量。

我們的插件基本上擴展了ParameterDefinition類,在構建作業屏幕中提供了一堆選項,然后為我們的作業設置了一個ParameterValue類設置環境變量。

我們的參數定義classe:

class NexusQueryParameterDefinition extends ParameterDefinition

是否可以從Parameter Definition類訪問SetEnv插件中定義的環境變量?

問題是我在參數化構建的定義時間,即當我按下“立即構建”按鈕和按下“構建”按鈕以啟動過程之間的屏幕。 此時我不知道如何訪問作業實例對象,我相信只在提交表單時才會創建構建對象。

這些環境變量保存在config.xml ,所以如果我能讀取這個文件,我可以解析這些值。

我建議您使用Environment Injector插件和groovy代碼來探索在作業配置中的“運行”選項的“設置環境”中返回一個地圖對象。

看起來如果不改變Hudson / Jenkins代碼就不可能。

以下是有關該鏈接的鏈接: https//groups.google.com/forum/#!topic / jenkinsci-dev / hLy525cxsg

如果環境變量已經注入運行時,您是否嘗試過? 使用System.getenv(“yourEnvVar”)訪問環境屬性的方法;

如果要為遷移路徑訪問SetEnv-Plugin的已配置的Env-Params,則會更棘手。 但是對於migation,我建議你閱讀config.xml並在你的插件中提取配置。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM