Coverage for nova/notifications/objects/libvirt.py: 100%
16 statements
« prev ^ index » next coverage.py v7.6.12, created at 2025-04-24 11:16 +0000
« prev ^ index » next coverage.py v7.6.12, created at 2025-04-24 11:16 +0000
1# Licensed under the Apache License, Version 2.0 (the "License"); you may
2# not use this file except in compliance with the License. You may obtain
3# a copy of the License at
4#
5# http://www.apache.org/licenses/LICENSE-2.0
6#
7# Unless required by applicable law or agreed to in writing, software
8# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
9# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
10# License for the specific language governing permissions and limitations
11# under the License.
13from nova.notifications.objects import base
14from nova.objects import base as nova_base
15from nova.objects import fields
18@nova_base.NovaObjectRegistry.register_notification
19class LibvirtErrorPayload(base.NotificationPayloadBase):
20 # Version 1.0: Initial version
21 VERSION = '1.0'
22 fields = {
23 'ip': fields.StringField(),
24 'reason': fields.ObjectField('ExceptionPayload'),
25 }
27 def __init__(self, ip, reason):
28 super(LibvirtErrorPayload, self).__init__()
29 self.ip = ip
30 self.reason = reason
33@base.notification_sample('libvirt-connect-error.json')
34@nova_base.NovaObjectRegistry.register_notification
35class LibvirtErrorNotification(base.NotificationBase):
36 # Version 1.0: Initial version
37 VERSION = '1.0'
38 fields = {
39 'payload': fields.ObjectField('LibvirtErrorPayload')
40 }