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

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. 

12 

13from nova.notifications.objects import base 

14from nova.objects import base as nova_base 

15from nova.objects import fields 

16 

17 

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 } 

26 

27 def __init__(self, ip, reason): 

28 super(LibvirtErrorPayload, self).__init__() 

29 self.ip = ip 

30 self.reason = reason 

31 

32 

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 }