簡體   English   中英

如何在python中使用自定義XML創建Jenkins Job

[英]How to create Jenkins Job with Customized XML in python

我正在嘗試使用python中的Jenkins模塊創建Jenkins作業。 我能夠與jenkins成功連接,並且perfrom獲得job_count以及create_job()方法。

在create_job()方法中,我只能使用“ jenkins.EMPTY_CONFIG_XML”參數來執行此操作。 如何傳遞自己的xml配置文件? 下面是我的代碼,我已經將配置保存在本地,如何通過替換EMPTY_CONFIG_XML來傳遞它。 我嘗試了幾件事,沒有用。 在網上找不到。 我下面的代碼正在工作。 它使用EMPTY_CONFIG_XML創建TestJob。 有人可以幫忙如何傳遞自定義XML文件嗎? 謝謝你的幫助!

import jenkins
import xml.etree.ElementTree as ET

server = jenkins.Jenkins("http://x.x.x.x:8080", username="foo", password="baar")

#print server.get_whoami()
server.create_job("TestJob",jenkins.EMPTY_CONFIG_XML)

查看create_job文檔,應將 config_xml參數作為xml的字符串表示形式傳遞。

我使用xml.etree.ElementTree解析XML文件並將其轉換為字符串:

import xml.etree.ElementTree as ET

def convert_xml_file_to_str():
    tree = ET.parse(path_to_config_file)
    root = tree.getroot()
    return ET.tostring(root, encoding='utf8', method='xml').decode()

def main():
    target_server = jenkins.Jenkins(url, username=username, password=password)
    config = convert_xml_file_to_str()
    target_server.create_job(job_name, config)

main()

我發現線程對理解如何解析XML文件非常有幫助,並且對Python2 / 3之間的差異也有很好的解釋。

暫無
暫無

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

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