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)
评论列表
文章目录