---
features:
  - |
    Adds support for Layer 7 switching and shared pools
    features to Neutron LBaaS v2. Neutron LBaaS v1 is
    unaffected by this new feature.

    * Layer 7 policies allow a tenant / user to define
      actions the load balancer may take other than
      routing requests to the default pool.
    * Layer 7 rules control the logic behind whether a
      given Layer 7 policy is followed.
    * Works for HTTP and TERMINATED_HTTPS listeners.
    * Shared pools allow listeners or Layer 7
      REDIRECT_TO_POOL policies to share back-end
      pools.
upgrade:
  - |
    Upgrade requires a database migration.

    * Shared-pools introduces a new ``loadbalancer_id``
      column into the ``lbaas_pools`` table.
    * ``lbaas_pools.loadbalancer_id`` column is populated
      from ``lbaas_listeners`` data using ETL in the
      migration.
    * Two new tables are created to handle Layer 7
      switching. These are ``lbaas_l7policies`` and
      ``lbaas_l7rules``.
  - |
    Driver updates may be required.

    * Maintainers of third-party drivers in the neutron-lbaas
      code tree will need to update their drivers to take
      advantage of the new Layer 7 switching features.
    * Pains have been taken to ensure that all interfaces
      (both API and internally) are compatible with the
      new shared-pools feature. Nevertheless, maintainers of
      third-party drivers should double-check their code to
      ensure they haven't made assumptions about
      listener-pool relationships which are now not true.
