Add BGPVPN composable service

This project aims at supporting inter-connection between L3VPNs
 and Neutron resources, i.e. Networks, Routers and Ports.

Partially-Implements: blueprint bgpvpn-service-integration

Depends-On:I7c1686693a29cc1985f009bd7a3c268c0e211876
Change-Id: I576c9ac2b443dbb6886824b3da457dcc4f87b442
Signed-off-by: Ricardo Noriega <rnoriega@redhat.com>
This commit is contained in:
Ricardo Noriega 2017-02-02 11:45:38 +01:00 committed by Carlos Camacho
parent 78b7a7ed8a
commit b67ad0695e
6 changed files with 60 additions and 0 deletions

View File

@ -308,6 +308,11 @@ topics:
description: >
Enable various Neutron plugins and backends
environments:
- file: environments/neutron-bgpvpn.yaml
title: Neutron BGPVPN Service Plugin
description: Enables Neutron BGPVPN Service Plugin
requires:
- overcloud-resource-registry-puppet.yaml
- file: environments/neutron-ml2-bigswitch.yaml
title: BigSwitch Extensions
description: >

View File

@ -0,0 +1,16 @@
# A Heat environment file that can be used to deploy Neutron BGPVPN service
#
# Currently there are four types of service provider for Neutron BGPVPN
# The default option is a dummy driver that allows to enable the API.
# In order to enable other backend, replace the content of BgpvpnServiceProvider
#
# - Bagpipe: BGPVPN:BaGPipe:networking_bgpvpn.neutron.services.service_drivers.bagpipe.bagpipe.BaGPipeBGPVPNDriver:default
# - OpenContrail: BGPVPN:OpenContrail:networking_bgpvpn.neutron.services.service_drivers.opencontrail.opencontrail.OpenContrailBGPVPNDriver:default
# - OpenDaylight: BGPVPN:OpenDaylight:networking_bgpvpn.neutron.services.service_drivers.opendaylight.odl.OpenDaylightBgpvpnDriver:default
# - Nuage: BGPVPN:Nuage:nuage_neutron.bgpvpn.services.service_drivers.driver.NuageBGPVPNDriver:default
resource_registry:
OS::TripleO::Services::NeutronBgpvpnApi: ../puppet/services/neutron-bgpvpn-api.yaml
parameter_defaults:
NeutronServicePlugins: 'networking_bgpvpn.neutron.services.plugin.BGPVPNPlugin'
BgpvpnServiceProvider: 'BGPVPN:Dummy:networking_bgpvpn.neutron.services.service_drivers.driver_api.BGPVPNDriver:default'

View File

@ -145,6 +145,7 @@ resource_registry:
OS::TripleO::Services::Kernel: puppet/services/kernel.yaml
OS::TripleO::Services::MySQL: puppet/services/database/mysql.yaml
OS::TripleO::Services::MySQLTLS: OS::Heat::None
OS::TripleO::Services::NeutronBgpvpnApi: OS::Heat::None
OS::TripleO::Services::NeutronDhcpAgent: puppet/services/neutron-dhcp.yaml
OS::TripleO::Services::NeutronL3Agent: puppet/services/neutron-l3.yaml
OS::TripleO::Services::NeutronMetadataAgent: puppet/services/neutron-metadata.yaml

View File

@ -0,0 +1,34 @@
heat_template_version: ocata
description: >
BGPVPN API service configured with Puppet
parameters:
ServiceNetMap:
default: {}
description: Mapping of service_name -> network name. Typically set
via parameter_defaults in the resource registry. This
mapping overrides those in ServiceNetMapDefaults.
type: json
DefaultPasswords:
default: {}
type: json
EndpointMap:
default: {}
description: Mapping of service endpoint -> protocol. Typically set
via parameter_defaults in the resource registry.
type: json
BgpvpnServiceProvider:
default: 'BGPVPN:Dummy:networking_bgpvpn.neutron.services.service_drivers.driver_api.BGPVPNDriver:default'
description: Backend to use as a service provider for BGPVPN
type: string
outputs:
role_data:
description: Role data for the BGPVPN role.
value:
service_name: neutron_bgpvpn_api
config_settings:
neutron::services::bgpvpn::service_providers: {get_param: BgpvpnServiceProvider}
step_config: |
include ::tripleo::profile::base::neutron::bgpvpn

View File

@ -0,0 +1,3 @@
---
features:
- Add support for BGPVPN Neutron service plugin

View File

@ -52,6 +52,7 @@
- OS::TripleO::Services::HeatEngine
- OS::TripleO::Services::MySQL
- OS::TripleO::Services::MySQLClient
- OS::TripleO::Services::NeutronBgpvpnApi
- OS::TripleO::Services::NeutronDhcpAgent
- OS::TripleO::Services::NeutronL3Agent
- OS::TripleO::Services::NeutronMetadataAgent