Esempio n. 1
0
    def __init__(self):
        super(QoSPlugin, self).__init__()
        self.driver_manager = manager.QosServiceDriverManager()
        self._placement_client = pl_client.PlacementAPIClient(cfg.CONF)

        callbacks_registry.subscribe(
            self._validate_create_port_callback,
            callbacks_resources.PORT,
            callbacks_events.PRECOMMIT_CREATE)
        callbacks_registry.subscribe(
            self._check_port_for_placement_allocation_change,
            callbacks_resources.PORT,
            callbacks_events.BEFORE_UPDATE)
        callbacks_registry.subscribe(
            self._validate_update_port_callback,
            callbacks_resources.PORT,
            callbacks_events.PRECOMMIT_UPDATE)
        callbacks_registry.subscribe(
            self._validate_update_network_callback,
            callbacks_resources.NETWORK,
            callbacks_events.PRECOMMIT_UPDATE)
        callbacks_registry.subscribe(
            self._validate_create_network_callback,
            callbacks_resources.NETWORK,
            callbacks_events.PRECOMMIT_CREATE)
Esempio n. 2
0
    def __init__(self):
        super(QoSPlugin, self).__init__()

        # TODO(mangelajo): remove notification_driver_manager in Pike
        self.notification_driver_manager = (
            driver_mgr.QosServiceNotificationDriverManager())

        self.driver_manager = manager.QosServiceDriverManager(enable_rpc=(
            self.notification_driver_manager.has_message_queue_driver))
Esempio n. 3
0
    def __init__(self):
        super(QoSPlugin, self).__init__()
        self.driver_manager = manager.QosServiceDriverManager()

        callbacks_registry.subscribe(self._validate_create_port_callback,
                                     callbacks_resources.PORT,
                                     callbacks_events.PRECOMMIT_CREATE)
        callbacks_registry.subscribe(self._validate_update_port_callback,
                                     callbacks_resources.PORT,
                                     callbacks_events.PRECOMMIT_UPDATE)
        callbacks_registry.subscribe(self._validate_update_network_callback,
                                     callbacks_resources.NETWORK,
                                     callbacks_events.PRECOMMIT_UPDATE)
Esempio n. 4
0
    def _create_manager_with_drivers(drivers_details):
        for name, driver_details in drivers_details.items():

            class QoSDriver(qos_driver_base.DriverBase):
                @property
                def is_loaded(self):
                    return driver_details['is_loaded']

            # the new ad-hoc driver will register on the QOS_PLUGIN registry
            QoSDriver(name, driver_details.get('vif_types', []),
                      driver_details.get('vnic_types', []),
                      driver_details.get('rules', []))

        return driver_mgr.QosServiceDriverManager()
Esempio n. 5
0
    def __init__(self):
        super(QoSPlugin, self).__init__()

        # TODO(mangelajo): remove notification_driver_manager in Pike
        self.notification_driver_manager = (
            driver_mgr.QosServiceNotificationDriverManager())

        self.driver_manager = manager.QosServiceDriverManager(enable_rpc=(
            self.notification_driver_manager.has_message_queue_driver))

        callbacks_registry.subscribe(self._validate_create_port_callback,
                                     callbacks_resources.PORT,
                                     callbacks_events.PRECOMMIT_CREATE)
        callbacks_registry.subscribe(self._validate_update_port_callback,
                                     callbacks_resources.PORT,
                                     callbacks_events.PRECOMMIT_UPDATE)
        callbacks_registry.subscribe(self._validate_update_network_callback,
                                     callbacks_resources.NETWORK,
                                     callbacks_events.PRECOMMIT_UPDATE)
Esempio n. 6
0
    def __init__(self):
        super(QoSPlugin, self).__init__()
        self.driver_manager = manager.QosServiceDriverManager()
        self._placement_client = pl_client.PlacementAPIClient(cfg.CONF)

        callbacks_registry.subscribe(self._validate_create_port_callback,
                                     callbacks_resources.PORT,
                                     callbacks_events.PRECOMMIT_CREATE)
        # TODO(lajoskatona): PORT BEFORE_UPDATE is a notify, so
        # "old style" kwargs instead of payload object, let's change it
        # to notify and payload.
        callbacks_registry.subscribe(
            self._check_port_for_placement_allocation_change,
            callbacks_resources.PORT, callbacks_events.BEFORE_UPDATE)
        callbacks_registry.subscribe(self._validate_update_port_callback,
                                     callbacks_resources.PORT,
                                     callbacks_events.PRECOMMIT_UPDATE)
        callbacks_registry.subscribe(self._validate_update_network_callback,
                                     callbacks_resources.NETWORK,
                                     callbacks_events.PRECOMMIT_UPDATE)