繁体   English   中英

用于取消排队构建和重建先前构建的 python-jenkins 包装器命令是什么?

[英]What is the python-jenkins wrapper commands for cancelling queued build and rebuild a previous build?

我正在使用python-jenkins包装器对我的 python 项目中的 Jenkins 作业进行操作。 大多数操作(如构建作业、删除构建等)在文档中都有一个 python 命令,但是没有这样的命令可用于使用 python 作为后端重建旧构建,有人可以建议它的代码片段我可以使用吗?

另一个问题是 python-jenkins package 的 cancel_queue() api,它需要一个作业 ID 作为参数,我在哪里可以找到该 ID?

    def cancel_queue(self, id):
        '''Cancel a queued build.

        :param id: Jenkins job id number for the build, ``int``
        '''
        # Jenkins seems to always return a 404 when using this REST endpoint
        # https://issues.jenkins-ci.org/browse/JENKINS-21311
        try:
            self.jenkins_open(
                requests.Request(
                    'POST', self._build_url(CANCEL_QUEUE, locals()),
                    headers={'Referer': self.server}))
        except NotFoundException:
            # Exception is expected; cancel_queue() is a best-effort
            # mechanism, so ignore it
            pass

这是 cancel_queue api 的代码,这是哪个 id? 有没有其他方法可以一次取消队列中存在的构建?

谢谢

所以我很难学到这一点,Jenkins 有自己的 queue_id,我们可以使用 python-jenkins 包装器读取它。 例如:

server = jenkins.Jenkins(URL, username=USER, password=PASSWORD)
queue_id = server.get_build_info(job_name, build_no)['queueId']

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM