Change flat network name for nosdn fdio scenario
[apex-tripleo-heat-templates.git] / puppet / services / neutron-plugin-ml2-ovn.yaml
1 heat_template_version: pike
2
3 description: >
4   OpenStack Neutron ML2/OVN plugin configured with Puppet
5
6 parameters:
7   ServiceData:
8     default: {}
9     description: Dictionary packing service data
10     type: json
11   ServiceNetMap:
12     default: {}
13     description: Mapping of service_name -> network name. Typically set
14                  via parameter_defaults in the resource registry.  This
15                  mapping overrides those in ServiceNetMapDefaults.
16     type: json
17   DefaultPasswords:
18     default: {}
19     type: json
20   RoleName:
21     default: ''
22     description: Role name on which the service is applied
23     type: string
24   RoleParameters:
25     default: {}
26     description: Parameters specific to the role
27     type: json
28   EndpointMap:
29     default: {}
30     description: Mapping of service endpoint -> protocol. Typically set
31                  via parameter_defaults in the resource registry.
32     type: json
33   OVNSouthboundServerPort:
34     description: Port of the OVN Southbound DB server
35     type: number
36     default: 6642
37   OVNDbConnectionTimeout:
38     description: Timeout in seconds for the OVSDB connection transaction
39     type: number
40     default: 180
41   OVNVifType:
42     description: Type of VIF to be used for ports
43     type: string
44     default: ovs
45     constraints:
46       - allowed_values:
47           - ovs
48           - vhostuser
49   OVNNeutronSyncMode:
50     description: The synchronization mode of OVN with Neutron DB
51     type: string
52     default: log
53     constraints:
54       - allowed_values:
55           - log
56           - off
57           - repair
58   OVNQosDriver:
59     description: OVN notification driver for Neutron QOS service plugin
60     type: string
61     default: NULL
62   NeutronGeneveMaxHeaderSize:
63     description: Geneve encapsulation header size
64     type: number
65     default: 38
66
67 resources:
68
69   NeutronMl2Base:
70     type: ./neutron-plugin-ml2.yaml
71     properties:
72       ServiceData: {get_param: ServiceData}
73       ServiceNetMap: {get_param: ServiceNetMap}
74       DefaultPasswords: {get_param: DefaultPasswords}
75       EndpointMap: {get_param: EndpointMap}
76       RoleName: {get_param: RoleName}
77       RoleParameters: {get_param: RoleParameters}
78
79 outputs:
80   role_data:
81     description: Role data for the Neutron ML2/OVN plugin.
82     value:
83       service_name: neutron_plugin_ml2_ovn
84       config_settings:
85         map_merge:
86           - get_attr: [NeutronMl2Base, role_data, config_settings]
87           - ovn::southbound::port: {get_param: OVNSouthboundServerPort}
88             neutron::plugins::ml2::ovn::ovsdb_connection_timeout: {get_param: OVNDbConnectionTimeout}
89             neutron::plugins::ml2::ovn::neutron_sync_mode: {get_param: OVNNeutronSyncMode}
90             neutron::plugins::ml2::ovn::ovn_l3_mode: true
91             neutron::plugins::ml2::ovn::vif_type: {get_param: OVNVifType}
92             neutron::server::qos_notification_drivers: {get_param: OVNQosDriver}
93             neutron::plugins::ml2::max_header_size: {get_param: NeutronGeneveMaxHeaderSize}
94       step_config: |
95         include ::tripleo::profile::base::neutron::plugins::ml2