internals.py 文件源码

python
阅读 32 收藏 0 点赞 0 评论 0

项目:freeipa-pr-ci 作者: freeipa 项目源码 文件源码
def _rerun_stalled_tasks(self, tasks):
        now = datetime.datetime.now(pytz.UTC)
        for task in tasks:
            timeout = datetime.timedelta(seconds=task.job.timeout)
            if not timeout:
                continue

            res = parse.parse(TASK_TAKEN_FMT, task.status.description)
            if not res:
                continue

            taken_on = dateutil.parser.parse(res['date'])
            extra = datetime.timedelta(seconds=STALE_TASK_EXTRA_TIME)
            deadline = taken_on + timeout + extra
            if deadline > now:
                continue

            taken_by = res['runner_id']
            logger.debug("Task %s on PR %d is stale, recreating. Was "
                         "taken on %s by %s timeout %ds.", task.name,
                         task.pull.pull.number, taken_on, taken_by,
                         timeout)
            Status.create(task.repo, task.pull, task.name,
                          'unassigned', '', 'pending')
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号