2013-06-12 90 views
5

,所以我必須在我使用詹金斯 的環境變量,例如bash腳本: QUALIFIER = echo $BUILD_ID | sed "s/[-_]//g" | cut -c1-12如何使用詹金斯環境變量在python腳本

基本上我走的是構建標識,連同工作名稱以確定從我的主腳本中調用哪個腳本。我想使用python,所以我想知道如果沒有jenkins python api,我是否可以使用這些變量。

我希望這個問題有道理。由於

+1

你能解釋一下你想要什麼? –

+1

我需要使用Jenkins中的環境變量(例如JOB_NAME )來決定調用哪個腳本。我有一個bash腳本獲取這些變量,但我想在python腳本中執行此操作。我將如何在Python中獲取這些變量? –

+0

看到這個,http://docs.python.org/2/library/subprocess.html –

回答

7

這就是你需要什麼,如果我理解正確:

QUALIFIER="$(echo $BUILD_ID | sed "s/[-_]//g" | cut -c1-12)" 
export QUALIFIER 
python my_script.py 

而在你的Python腳本:

import os 
qualifier = os.environ['QUALIFIER'] 

或無殼部分:

import os 
import re 
qualifier = re.sub(r'[-_]+', '', os.environ['BUILD_ID'])[0:12] 
+0

但我會需要我的bash腳本以及python一個'QUALIFIER'? $ BUILD_ID使jenkins環境變量可用於bash腳本。是否有某種方式可以使它可用於Python腳本而不必使用bash? –

+0

其實從來沒有!非常感謝,這對我很有用 –

+0

您可以使用完全相同的方式訪問'$ BUILD_ID'(使用'os.environ'),然後刪除破折號並在Python中對其進行分片。 –