Merge "Add support for node groups in NetConfigDataLookup"
[apex-tripleo-heat-templates.git] / puppet / services / neutron-sriov-agent.yaml
1 heat_template_version: ocata
2
3 description: >
4   OpenStack Neutron SR-IOV nic agent configured with Puppet
5
6 parameters:
7   ServiceNetMap:
8     default: {}
9     description: >
10       Mapping of service_name -> network name. Typically set via
11       parameter_defaults in the resource registry. This mapping overrides those
12       in ServiceNetMapDefaults.
13     type: json
14   DefaultPasswords:
15     default: {}
16     type: json
17   EndpointMap:
18     default: {}
19     description: Mapping of service endpoint -> protocol. Typically set
20                  via parameter_defaults in the resource registry.
21     type: json
22   NeutronPhysicalDevMappings:
23     description: >
24       List of <physical_network>:<physical device>
25       All physical networks listed in network_vlan_ranges
26       on the server should have mappings to appropriate
27       interfaces on each agent.
28       Example "tenant0:ens2f0,tenant1:ens2f1"
29     type: comma_delimited_list
30     default: ""
31   NeutronExcludeDevices:
32     description: >
33       List of <network_device>:<excluded_devices> mapping
34       network_device to the agent's node-specific list of virtual functions
35       that should not be used for virtual networking. excluded_devices is a
36       semicolon separated list of virtual functions to exclude from
37       network_device. The network_device in the mapping should appear in the
38       physical_device_mappings list.
39     type: comma_delimited_list
40     default: ""
41   NeutronSriovNumVFs:
42     description: >
43       Provide the list of VFs to be reserved for each SR-IOV interface.
44       Format "<interface_name1>:<numvfs1>,<interface_name2>:<numvfs2>"
45       Example "eth1:4096,eth2:128"
46     type: comma_delimited_list
47     default: ""
48
49 resources:
50
51   NeutronBase:
52     type: ./neutron-base.yaml
53     properties:
54       ServiceNetMap: {get_param: ServiceNetMap}
55       DefaultPasswords: {get_param: DefaultPasswords}
56       EndpointMap: {get_param: EndpointMap}
57
58 outputs:
59   role_data:
60     description: Role data for the Neutron SR-IOV nic agent service.
61     value:
62       service_name: neutron_sriov_agent
63       config_settings:
64         map_merge:
65           - get_attr: [NeutronBase, role_data, config_settings]
66           - neutron::agents::ml2::sriov::physical_device_mappings: {get_param: NeutronPhysicalDevMappings}
67             neutron::agents::ml2::sriov::exclude_devices: {get_param: NeutronExcludeDevices}
68             tripleo::host::sriov::number_of_vfs: {get_param: NeutronSriovNumVFs}
69       step_config: |
70         include ::tripleo::profile::base::neutron::sriov