models.py 文件源码

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

项目:alterchef 作者: libremesh 项目源码 文件源码
def _process(self, *args, **kwargs):
        output = u"%s\n" % self.job_data
        job_url = reverse('fwjob-detail', kwargs={'pk': self.pk})
        domain = Site.objects.all()[0].domain

        for command in self.job_data["commands"]:
            output += command + "\n"
            p = subprocess.Popen(command.split(), stdout=subprocess.PIPE,
                                 stderr=subprocess.STDOUT)
            output += p.communicate()[0].decode("utf-8")

            if p.returncode != 0:
                email_msg = "Cook failed for job http://%s%s" % (domain, job_url)
                mail_managers("[Chef] Cook failed", email_msg, fail_silently=True)
                send_mail("[Chef] Cook failed", email_msg, settings.DEFAULT_FROM_EMAIL,
                          [self.user.email], fail_silently=True)
                self.status = "FAILED"
                self.build_log = output
                self.save()
                return
        email_msg = "Cook finished: http://%s%s" % (domain, job_url)
        send_mail("[Chef] Cook finished", email_msg, settings.DEFAULT_FROM_EMAIL,
                  [self.user.email], fail_silently=True)
        self.status = "FINISHED"
        self.save()
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号