[英]python pattern matching joined with a string
我想從 jenkins 作業 > 上次成功構建下載構建文件。 文件名類似於:DevPackage-123.pkg,其中 123 是最后一個成功的內部版本號。 在我使用 urllib 的 python 腳本中,如何將此文件名作為通用變量傳遞。 我的意思是文件名 = "DevPackage-" + <3 位數字> + ".pkg" 在運行腳本時,我不知道這 3 位代表內部版本號的數字。我期待在文件名中添加 3 位數字的模式。請幫忙!
if jenkins == "branch" and build == "lastsuccessful":
baselink = "http://" + credentials + "XXX.XXX.XXX.XXX/job/My_Build_Job/lastSuccessfulBuild/artifact/results/"
filelist = ["DevPackage-XXX.pkg","MIBS.zip","udpServer.sh"]
for index in range(len(filelist)):
urllib.urlretrieve(baselink+filelist[index],newdir+filelist[index])
print filelist[index]+" Copied!"
首先,您必須從 Jenkins 獲得針對給定工作的最后一次成功構建:
import shutils
import os
import requests
res = requests.get("http://{}@XXX.XXX.XXX.XXX/job/My_Build_Job/lastSuccessfulBuild/buildNumber".format(credentials))
build_number = res.text
之后,您可以獲得最后的工件內容:
baselink = "http://{}@XXX.XXX.XXX.XXX/job/My_Build_Job/lastSuccessfulBuild/artifact/results/{}"
filelist = ["DevPackage-{}.pkg".format(build_number),"MIBS.zip","udpServer.sh"]
for filename in filelist:
res = requests.get(baselink.format(credentials, filename), stream=True)
if res.status_code == 200:
with open(os.path.join(newdir, filename), "wb") as localfile:
shutil.copyfileobj(res.raw, localfile)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.