Comment 4 for bug 1702312

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to neutron-fwaas (master)

Reviewed: https://review.openstack.org/480265
Committed: https://git.openstack.org/cgit/openstack/neutron-fwaas/commit/?id=9b353afde499f46ebec6e8c8529eab0a99a2023b
Submitter: Zuul
Branch: master

commit 9b353afde499f46ebec6e8c8529eab0a99a2023b
Author: Édouard Thuleau <email address hidden>
Date: Mon Jun 26 11:32:24 2017 +0200

    Implements a plugable backend driver

    This patch removes all related DB code from the FWaaS service plugin v2
    and creates service driver interfaces that can be used by different
    backend drivers.

    The default backend driver still based on the Neutron DB model
    and agent RPC interface (for l3 and l2 agents) and was moved
    to 'service_drivers.agents.agents.FwaasAgentDriver'. It inherits from the
    firewall backend driver DB interface
    'service_drivers.driver_api.FwaasDriverDB' to maintain the DB. It
    is in charge to implement all RPC API and messages.

    If we need to implement a backend driver which depends on the Neutron DB
    but not on the agent RPC service, we just have to inherit from the DB
    interface and if we like to develop a backend driver which not depends
    on the Neutron DB model, we can inherit from the base driver interface
    'service_driver.driver_api.FwaasDriver'.

    That patch only modifies the service plugin 'firewall_v2', it does not
    modify the Firewall v1 service plugin.

    The backend DB driver provides an interface composed to a pre and post
    commit hooks for each FWaaSv2 API actions which permits to the driver to
    be warn anytimes. All that commit hooks methods does not do anything by
    default and the backend driver needs to overide needed hooks.
    The driver does not needs to implements all of them,

    Closes-Bug: #1702312
    Change-Id: I4ebd24f1b13eb823c4d63452fd37cace5bcf5481