if buildStatus: try: server.build_job(jobConfig.jobName) print(f"trigger build process of : {jobConfig.jobName}") except jenkins.JenkinsException as e: print(f"create ci job error: {str(e)}")是什么意思?
时间: 2024-02-11 10:19:33 浏览: 16
这段代码片段是一个条件语句,它检查一个名为`buildStatus`的变量的值。如果`buildStatus`为真(非零、非空),则执行以下操作:
1. 尝试触发一个名为`jobConfig.jobName`的构建作业。
2. 打印出触发的构建作业的名称。
如果触发构建作业时出现`jenkins.JenkinsException`异常,将捕获该异常,并打印出相应的错误信息。
相关问题
except jenkins.JenkinsException as e: # if exits then reconfig if "already exists" in str(e): print(f"{jobConfig.jobName} already exists") server.reconfig_job(jobConfig.jobName, newJobConfigXml) print(f"{jobConfig.jobName} reconfig successful")
这是一段代码,它处理了 Jenkins 异常并执行了重新配置的操作。如果捕获到的异常是 `jenkins.JenkinsException`,并且异常信息中包含 "already exists",则会输出相应的提示信息,并调用 `server.reconfig_job()` 方法来重新配置指定的 Jenkins 任务。最后,打印出重新配置成功的提示信息。
yang.li_test2_01 create successful Traceback (most recent call last): File "/IP/sip_dv/yang.li/test0612/proc_tools/Jenkins_script/jenkins_create_flow_v2.py", line 34, in <module> create_jenkins_jobs(server, configFileName) File "/IP/sip_dv/yang.li/test0612/proc_tools/Jenkins_script/jenkins_operation/curd_operation.py", line 58, in create_jenkins_jobs server.build_job(jobConfig.jobName) File "/tools/python/3.10.2/lib/python3.10/site-packages/jenkins/__init__.py", line 1370, in build_job response = self.jenkins_request(requests.Request( File "/tools/python/3.10.2/lib/python3.10/site-packages/jenkins/__init__.py", line 578, in jenkins_request return self._response_handler( File "/tools/python/3.10.2/lib/python3.10/site-packages/jenkins/__init__.py", line 539, in _response_handler response.raise_for_status() File "/tools/python/3.10.2/lib/python3.10/site-packages/requests/models.py", line 1021, in raise_for_status raise HTTPError(http_error_msg, response=self) requests.exceptions.HTTPError: 409 Client Error: Conflict for url: http://ci.enflame.cn/job/yang.li_test2_01/build
根据你的提示信息,我看到你在使用 Python 的 Jenkins 库进行 Jenkins Job 的创建,并且在执行 `server.build_job(jobConfig.jobName)` 时出现了 HTTP 409 Conflict 错误。这个错误通常表示你正在尝试创建一个已经存在的 Job。建议你检查一下你的 Jenkins 中是否已经存在名为 `yang.li_test2_01` 的 Job,如果是的话,可以尝试修改 Job 名称或者使用 Jenkins 库提供的其他方法进行 Job 的更新。