default_email.py 文件源码

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

项目:freezer-dr 作者: openstack 项目源码 文件源码
def notify_status(self, node, status):
        _template = 'info.jinja'
        if status == 'success':
            _template = 'user_success.jinja'
        elif status == 'error':
            _template = 'error.jinja'

        for tenant in node.get('tenants'):
            for user in tenant.get('users'):
                if 'email' in user:
                    subject = '[' + status + '] Evacuation Status'
                    template_vars = {
                        'name': user.get('name'),
                        'tenant': tenant.get('id'),
                        'instances': tenant.get('instances'),
                        'evacuation_time': date.fromtimestamp(time.time())
                    }
                    message = load_jinja_templates(self.templates_dir,
                                                   _template, template_vars)
                    self.send_email(self.notify_from, user.get('email'),
                                    subject, html_msg=message)
        # notify administrators
        subject = 'Host Evacuation status'
        _template = 'success.jinja'
        template_vars = {
            'host': node.get('host'),
            'tenants': node.get('tenants'),
            'instances': node.get('instances'),
            'hypervisor': node.get('details'),
            'evacuation_time': date.fromtimestamp(time.time())
        }
        message = load_jinja_templates(self.templates_dir, _template,
                                       template_vars)
        self.send_email(self.notify_from, self.notify_from, subject,
                        message, self.admin_list or None)
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号