簡體   English   中英

Python 看不到從 Jenkins 參數化構建設置的環境變量

[英]Python does not see env variables set from Jenkins Parameterized build

我正在嘗試從 jenkins 構建到我的 python 腳本中檢索參數集,但是遇到了麻煩。 我了解從這里設置的參數: 在此處輸入圖像描述

被設置為環境變量,我在 python 中要做的就是:

# Env variables
UPDATE_DATA = os.environ.get('update_data')
ALL_BUILDS = os.environ.get('all_builds')

但是,對於這些值,我得到了 None 。 當我在我的 python 腳本運行之前在我的 jenkins 腳本中回顯這些參數時,我可以看到它們被正確打印出來。 但是,由於某種原因 python 沒有看到它們。 如果我將 go 手動輸入到終端並導出變量並運行我的 python 腳本,它就可以工作......所以我完全迷失了。

Jenkins 服務器在 linux 上運行。 使用 python 2.7

您可以像這樣使用 boolean 變量:

在此處輸入圖像描述

Output: 在此處輸入圖像描述

似乎當我在 Jenkins 配置中運行 python 腳本時(不在我的項目中的文件中),就像@souravatta 建議的那樣,它找到了 env 變量。 這意味着環境變量 Jenkins 正在設置,以某種方式位於不同的實例上(即使它們在同一台計算機上,同一用戶上)。 我只是做了一個解決方法,將環境變量寫入文件,然后在我的 python 腳本中讀取該文件。

暫無
暫無

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

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