如何从 Jenkins 获取参数化值 python

How to get parameterized value from Jenkins python

我使用 python-jenkins。我需要从所有作业中收集参数化值。

我不明白,我该怎么做?! 我的脚本部分:

...
s = jenkins.Jenkins(server_url, user, pwd)
try:
    job_name = 'job_name'                  
    build_num = s.get_job_info(job_name)['lastBuild']['number']
    while build_num>0: 
        try: 
            build_info = s.get_build_info(job_name,build_num)
            build_info_actions = build_info['actions']
            print(build_info_actions)
...

我查看了一些信息

[{'parameters': [{'value': '12345', 'name': 'name1', '_class': 'hudson.model.StringParameterValue'}, {'value': 'value2', 'name': 'name2', '_class': 'hudson.model.StringParameterValue'}, {'value': 'http://some_URL', 'name': 'Url1', '_class': 'hudson.model.StringParameterValue'}, {'value': '', 'name': 'Url2', '_class': 'hudson.model.StringParameterValue'}], '_class': 'hudson.model.ParametersAction'}, {'_class':'hudson.model.CauseAction', 'causes': [{'note': None, '_class': 'hudson.model.Cause$RemoteCause', 'shortDescription': 'Started by  host NameHost', 'addr': 'some.address'}]}, {'_class': 'jenkins.metrics.impl.TimeInQueueAction'}, {}, {}, {}, {}, {}, {}, {}] 

我怎样才能像这样收集所有信息并保存到文件中:

name1 , 12345, name2, value2, Url1, http://some_URL ... 

BIG 谢谢你的帮助! 抱歉我的英语不好..

x = [{'parameters': [{'value': '12345', 'name': 'name1'}]}]

这里

x

是字典列表 ([]),可能还包含字典列表。

例如访问 value 是这样完成的:

x[0] 是列表中的第一个元素,因为这是一个字典,所以你得到它的键 parameters 就像

x[0]['parameters']

这也是一个字典列表,第一个元素是

x[0]['parameters'][0]

而关键 value

x[0]['parameters'][0]['value']

然后只需连接字符串并写入文件。