Esempio n. 1
0
def notify_about_server_group_action(context, group, action):
    payload = sg_notification.ServerGroupPayload(group)
    notification = sg_notification.ServerGroupNotification(
        priority=fields.NotificationPriority.INFO,
        publisher=notification_base.NotificationPublisher(
            host=CONF.host, source=fields.NotificationSource.API),
        event_type=notification_base.EventType(object='server_group',
                                               action=action),
        payload=payload)
    notification.emit(context)
Esempio n. 2
0
def notify_about_server_group_add_member(context, group_id):
    group = objects.InstanceGroup.get_by_uuid(context, group_id)
    payload = sg_notification.ServerGroupPayload(group)
    notification = sg_notification.ServerGroupNotification(
        priority=fields.NotificationPriority.INFO,
        publisher=notification_base.NotificationPublisher(
            host=CONF.host, source=fields.NotificationSource.API),
        event_type=notification_base.EventType(
            object='server_group',
            action=fields.NotificationAction.ADD_MEMBER),
        payload=payload)
    notification.emit(context)
Esempio n. 3
0
 def __init__(self, request_spec):
     super(RequestSpecPayload, self).__init__()
     self.flavor = flavor_payload.FlavorPayload(
         request_spec.flavor) if request_spec.obj_attr_is_set(
             'flavor') else None
     self.image = image_payload.ImageMetaPayload(
         request_spec.image) if request_spec.image else None
     if request_spec.numa_topology is not None:
         if not request_spec.numa_topology.obj_attr_is_set('instance_uuid'):
             request_spec.numa_topology.instance_uuid = (
                 request_spec.instance_uuid)
         self.numa_topology = InstanceNUMATopologyPayload(
             request_spec.numa_topology)
     else:
         self.numa_topology = None
     if request_spec.pci_requests is not None:
         if not request_spec.pci_requests.obj_attr_is_set('instance_uuid'):
             request_spec.pci_requests.instance_uuid = (
                 request_spec.instance_uuid)
         self.pci_requests = InstancePCIRequestsPayload(
             request_spec.pci_requests)
     else:
         self.pci_requests = None
     if 'requested_destination' in request_spec \
             and request_spec.requested_destination:
         self.requested_destination = DestinationPayload(
             destination=request_spec.requested_destination)
     else:
         self.requested_destination = None
     if 'retry' in request_spec and request_spec.retry:
         self.retry = SchedulerRetriesPayload(retry=request_spec.retry)
     else:
         self.retry = None
     self.security_groups = [
         sec_group.identifier for sec_group in request_spec.security_groups
     ]
     if 'instance_group' in request_spec and request_spec.instance_group:
         self.instance_group = server_group_payload.ServerGroupPayload(
             group=request_spec.instance_group)
     else:
         self.instance_group = None
     if 'force_hosts' in request_spec and request_spec.force_hosts:
         self.force_hosts = request_spec.force_hosts[0]
     else:
         self.force_hosts = None
     if 'force_nodes' in request_spec and request_spec.force_nodes:
         self.force_nodes = request_spec.force_nodes[0]
     else:
         self.force_nodes = None
     self.populate_schema(request_spec=request_spec)