9e785a4ce0
sriov_pf: configure numvfs of the device, create and enable sriov_numvfs service for the persistence of the numvfs configuration across reboots. sriov_vf: configure the ifcfgs for the Vfs Change-Id: I0e55d1556328fcb90b66c898c534b76e41ca9618 Implements: blueprint sriov-vfs-as-network-interface
1281 lines
42 KiB
YAML
1281 lines
42 KiB
YAML
---
|
|
$schema: http://json-schema.org/draft-04/schema
|
|
|
|
definitions:
|
|
# base types
|
|
param:
|
|
oneOf:
|
|
- type: object
|
|
properties:
|
|
get_param:
|
|
type: string
|
|
additionalProperties: False
|
|
- type: object
|
|
properties:
|
|
get_input:
|
|
type: string
|
|
additionalProperties: False
|
|
string_or_param:
|
|
oneOf:
|
|
- type: string
|
|
- $ref: "#/definitions/param"
|
|
int_or_param:
|
|
oneOf:
|
|
- type: integer
|
|
- $ref: "#/definitions/param"
|
|
bool_or_param:
|
|
oneOf:
|
|
- type: boolean
|
|
- # also accept strings of boolean values (like oslo_utils.strutils)
|
|
type: string
|
|
pattern: "(?i)^(t|true|on|y|yes|1|f|false|off|n|no|0)$"
|
|
- $ref: "#/definitions/param"
|
|
|
|
# IP address and address+prefix types
|
|
ipv4_address_string:
|
|
type: string
|
|
pattern: "^((25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?).){3}\
|
|
(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$"
|
|
ipv6_address_string:
|
|
type: string
|
|
pattern: "^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}\
|
|
|([0-9a-fA-F]{1,4}:){1,7}:\
|
|
|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}\
|
|
|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}\
|
|
|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}\
|
|
|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}\
|
|
|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}\
|
|
|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})\
|
|
|:((:[0-9a-fA-F]{1,4}){1,7}|:))$"
|
|
ip_address_string:
|
|
oneOf:
|
|
- $ref: "#/definitions/ipv4_address_string"
|
|
- $ref: "#/definitions/ipv6_address_string"
|
|
ip_address_string_or_param:
|
|
oneOf:
|
|
- $ref: "#/definitions/ip_address_string"
|
|
- $ref: "#/definitions/param"
|
|
list_of_ip_address_string_or_param:
|
|
oneOf:
|
|
- type: array
|
|
items:
|
|
$ref: "#/definitions/ip_address_string_or_param"
|
|
minItems: 0
|
|
- $ref: "#/definitions/param"
|
|
|
|
ipv4_cidr_string:
|
|
type: string
|
|
pattern: "^((25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?).){3}\
|
|
(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\
|
|
/(3[0-2]|[1-2][0-9]|[0-9])$"
|
|
ipv6_cidr_string:
|
|
type: string
|
|
pattern: "^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}\
|
|
|([0-9a-fA-F]{1,4}:){1,7}:\
|
|
|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}\
|
|
|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}\
|
|
|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}\
|
|
|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}\
|
|
|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}\
|
|
|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})\
|
|
|:((:[0-9a-fA-F]{1,4}){1,7}|:))\
|
|
/(12[0-8]|1[0-1][0-9]|[1-9][0-9]|[0-9])$"
|
|
ip_cidr_string:
|
|
oneOf:
|
|
- $ref: "#/definitions/ipv4_cidr_string"
|
|
- $ref: "#/definitions/ipv6_cidr_string"
|
|
ip_cidr_string_or_param:
|
|
oneOf:
|
|
- $ref: "#/definitions/ip_cidr_string"
|
|
- $ref: "#/definitions/param"
|
|
- type: object
|
|
properties:
|
|
list_join:
|
|
type: array
|
|
items:
|
|
- enum: ["/"]
|
|
- type: array
|
|
items:
|
|
- $ref: "#/definitions/ip_address_string_or_param"
|
|
- $ref: "#/definitions/int_or_param"
|
|
required:
|
|
- list_join
|
|
additionalProperties: False
|
|
|
|
# os-net-config derived types
|
|
address:
|
|
type: object
|
|
properties:
|
|
ip_netmask:
|
|
$ref: "#/definitions/ip_cidr_string_or_param"
|
|
required:
|
|
- ip_netmask
|
|
additionalProperties: False
|
|
list_of_address:
|
|
type: array
|
|
items:
|
|
$ref: "#/definitions/address"
|
|
minItems: 1
|
|
|
|
route:
|
|
type: object
|
|
properties:
|
|
next_hop:
|
|
$ref: "#/definitions/ip_address_string_or_param"
|
|
ip_netmask:
|
|
$ref: "#/definitions/ip_cidr_string_or_param"
|
|
default:
|
|
$ref: "#/definitions/bool_or_param"
|
|
route_options:
|
|
$ref: "#/definitions/string_or_param"
|
|
required:
|
|
- next_hop
|
|
additionalProperties: False
|
|
list_of_route:
|
|
type: array
|
|
items:
|
|
$ref: "#/definitions/route"
|
|
minItems: 1
|
|
|
|
nic_mapping:
|
|
type: ["object", "null"]
|
|
|
|
bonding_options:
|
|
type: string
|
|
|
|
ovs_options_string:
|
|
type: string
|
|
pattern: "^((?:[a-zA-Z][a-zA-Z0-9: _-]*)=(?:[a-zA-Z0-9._-]+)[ ]*)+$"
|
|
ovs_options_string_or_param:
|
|
oneOf:
|
|
- $ref: "#/definitions/ovs_options_string"
|
|
- $ref: "#/definitions/param"
|
|
ovs_single_option_string:
|
|
type: string
|
|
pattern: "^([a-zA-Z][a-zA-Z0-9: _-]*)=([a-zA-Z0-9._-]+)$"
|
|
ovs_options_list:
|
|
type: array
|
|
items:
|
|
$ref: "#/definitions/ovs_single_option_string"
|
|
minItems: 1
|
|
ovs_options_list_or_param:
|
|
oneOf:
|
|
- $ref: "#/definitions/ovs_options_list"
|
|
- $ref: "#/definitions/param"
|
|
ovs_fail_mode:
|
|
enum: ["standalone", "secure"]
|
|
ovs_fail_mode_or_param:
|
|
oneOf:
|
|
- $ref: "#/definitions/ovs_fail_mode"
|
|
- $ref: "#/definitions/param"
|
|
ovs_extra_string:
|
|
type: string
|
|
ovs_extra:
|
|
oneOf:
|
|
- $ref: "#/definitions/ovs_extra_string"
|
|
- type: array
|
|
items:
|
|
$ref: "#/definitions/ovs_extra_string"
|
|
minItems: 1
|
|
ovs_extra_or_param:
|
|
oneOf:
|
|
- $ref: "#/definitions/ovs_extra"
|
|
- $ref: "#/definitions/param"
|
|
ovs_tunnel_type:
|
|
enum: ["vxlan", "gre"]
|
|
ovs_tunnel_type_or_param:
|
|
oneOf:
|
|
- $ref: "#/definitions/ovs_tunnel_type"
|
|
- $ref: "#/definitions/param"
|
|
|
|
# os-net-config device types
|
|
interface:
|
|
type: object
|
|
properties:
|
|
type:
|
|
enum: ["interface"]
|
|
name:
|
|
$ref: "#/definitions/string_or_param"
|
|
primary:
|
|
$ref: "#/definitions/bool_or_param"
|
|
ethtool_opts:
|
|
$ref: "#/definitions/string_or_param"
|
|
hotplug:
|
|
$ref: "#/definitions/bool_or_param"
|
|
# common options:
|
|
use_dhcp:
|
|
$ref: "#/definitions/bool_or_param"
|
|
use_dhcp6:
|
|
$ref: "#/definitions/bool_or_param"
|
|
addresses:
|
|
$ref: "#/definitions/list_of_address"
|
|
routes:
|
|
$ref: "#/definitions/list_of_route"
|
|
mtu:
|
|
$ref: "#/definitions/int_or_param"
|
|
nic_mapping:
|
|
$ref: "#/definitions/nic_mapping"
|
|
persist_mapping:
|
|
$ref: "#/definitions/bool_or_param"
|
|
defroute:
|
|
$ref: "#/definitions/bool_or_param"
|
|
dhclient_args:
|
|
$ref: "#/definitions/string_or_param"
|
|
dns_servers:
|
|
$ref: "#/definitions/list_of_ip_address_string_or_param"
|
|
nm_controlled:
|
|
$ref: "#/definitions/bool_or_param"
|
|
onboot:
|
|
$ref: "#/definitions/bool_or_param"
|
|
required:
|
|
- type
|
|
- name
|
|
additionalProperties: False
|
|
|
|
sriov_pf:
|
|
type: object
|
|
properties:
|
|
type:
|
|
enum: ["sriov_pf"]
|
|
name:
|
|
$ref: "#/definitions/string_or_param"
|
|
primary:
|
|
$ref: "#/definitions/bool_or_param"
|
|
numvfs:
|
|
$ref: "#/definitions/int_or_param"
|
|
hotplug:
|
|
$ref: "#/definitions/bool_or_param"
|
|
# common options:
|
|
use_dhcp:
|
|
$ref: "#/definitions/bool_or_param"
|
|
use_dhcp6:
|
|
$ref: "#/definitions/bool_or_param"
|
|
addresses:
|
|
$ref: "#/definitions/list_of_address"
|
|
routes:
|
|
$ref: "#/definitions/list_of_route"
|
|
mtu:
|
|
$ref: "#/definitions/int_or_param"
|
|
nic_mapping:
|
|
$ref: "#/definitions/nic_mapping"
|
|
persist_mapping:
|
|
$ref: "#/definitions/bool_or_param"
|
|
defroute:
|
|
$ref: "#/definitions/bool_or_param"
|
|
dhclient_args:
|
|
$ref: "#/definitions/string_or_param"
|
|
dns_servers:
|
|
$ref: "#/definitions/list_of_ip_address_string_or_param"
|
|
nm_controlled:
|
|
$ref: "#/definitions/bool_or_param"
|
|
onboot:
|
|
$ref: "#/definitions/bool_or_param"
|
|
required:
|
|
- type
|
|
- name
|
|
- numvfs
|
|
additionalProperties: False
|
|
|
|
sriov_vf:
|
|
type: object
|
|
properties:
|
|
type:
|
|
enum: ["sriov_vf"]
|
|
primary:
|
|
$ref: "#/definitions/bool_or_param"
|
|
device:
|
|
$ref: "#/definitions/string_or_param"
|
|
vfid:
|
|
$ref: "#/definitions/int_or_param"
|
|
hotplug:
|
|
$ref: "#/definitions/bool_or_param"
|
|
# common options:
|
|
use_dhcp:
|
|
$ref: "#/definitions/bool_or_param"
|
|
use_dhcp6:
|
|
$ref: "#/definitions/bool_or_param"
|
|
addresses:
|
|
$ref: "#/definitions/list_of_address"
|
|
routes:
|
|
$ref: "#/definitions/list_of_route"
|
|
mtu:
|
|
$ref: "#/definitions/int_or_param"
|
|
nic_mapping:
|
|
$ref: "#/definitions/nic_mapping"
|
|
persist_mapping:
|
|
$ref: "#/definitions/bool_or_param"
|
|
defroute:
|
|
$ref: "#/definitions/bool_or_param"
|
|
dhclient_args:
|
|
$ref: "#/definitions/string_or_param"
|
|
dns_servers:
|
|
$ref: "#/definitions/list_of_ip_address_string_or_param"
|
|
nm_controlled:
|
|
$ref: "#/definitions/bool_or_param"
|
|
onboot:
|
|
$ref: "#/definitions/bool_or_param"
|
|
required:
|
|
- type
|
|
- device
|
|
- vfid
|
|
additionalProperties: False
|
|
|
|
vlan:
|
|
type: object
|
|
properties:
|
|
type:
|
|
enum: ["vlan"]
|
|
vlan_id:
|
|
$ref: "#/definitions/int_or_param"
|
|
device:
|
|
$ref: "#/definitions/string_or_param"
|
|
primary:
|
|
$ref: "#/definitions/bool_or_param"
|
|
# common options:
|
|
use_dhcp:
|
|
$ref: "#/definitions/bool_or_param"
|
|
use_dhcp6:
|
|
$ref: "#/definitions/bool_or_param"
|
|
addresses:
|
|
$ref: "#/definitions/list_of_address"
|
|
routes:
|
|
$ref: "#/definitions/list_of_route"
|
|
mtu:
|
|
$ref: "#/definitions/int_or_param"
|
|
nic_mapping:
|
|
$ref: "#/definitions/nic_mapping"
|
|
persist_mapping:
|
|
$ref: "#/definitions/bool_or_param"
|
|
defroute:
|
|
$ref: "#/definitions/bool_or_param"
|
|
dhclient_args:
|
|
$ref: "#/definitions/string_or_param"
|
|
dns_servers:
|
|
$ref: "#/definitions/list_of_ip_address_string_or_param"
|
|
nm_controlled:
|
|
$ref: "#/definitions/bool_or_param"
|
|
onboot:
|
|
$ref: "#/definitions/bool_or_param"
|
|
required:
|
|
- type
|
|
- vlan_id
|
|
additionalProperties: False
|
|
|
|
ovs_bridge:
|
|
type: object
|
|
properties:
|
|
type:
|
|
enum: ["ovs_bridge"]
|
|
name:
|
|
$ref: "#/definitions/string_or_param"
|
|
members:
|
|
type: array
|
|
items:
|
|
oneOf:
|
|
- $ref: "#/definitions/interface"
|
|
- $ref: "#/definitions/vlan"
|
|
- $ref: "#/definitions/linux_bond"
|
|
- $ref: "#/definitions/ovs_bond"
|
|
- $ref: "#/definitions/ovs_tunnel"
|
|
- $ref: "#/definitions/ovs_patch_port"
|
|
ovs_options:
|
|
$ref: "#/definitions/ovs_options_string_or_param"
|
|
ovs_extra:
|
|
$ref: "#/definitions/ovs_extra_or_param"
|
|
ovs_fail_mode:
|
|
$ref: "#/definitions/ovs_fail_mode_or_param"
|
|
# common options:
|
|
use_dhcp:
|
|
$ref: "#/definitions/bool_or_param"
|
|
use_dhcp6:
|
|
$ref: "#/definitions/bool_or_param"
|
|
addresses:
|
|
$ref: "#/definitions/list_of_address"
|
|
routes:
|
|
$ref: "#/definitions/list_of_route"
|
|
mtu:
|
|
$ref: "#/definitions/int_or_param"
|
|
nic_mapping:
|
|
$ref: "#/definitions/nic_mapping"
|
|
persist_mapping:
|
|
$ref: "#/definitions/bool_or_param"
|
|
defroute:
|
|
$ref: "#/definitions/bool_or_param"
|
|
dhclient_args:
|
|
$ref: "#/definitions/string_or_param"
|
|
dns_servers:
|
|
$ref: "#/definitions/list_of_ip_address_string_or_param"
|
|
nm_controlled:
|
|
$ref: "#/definitions/bool_or_param"
|
|
onboot:
|
|
$ref: "#/definitions/bool_or_param"
|
|
required:
|
|
- type
|
|
- name
|
|
- members
|
|
additionalProperties: False
|
|
|
|
ovs_user_bridge:
|
|
type: object
|
|
properties:
|
|
type:
|
|
enum: ["ovs_user_bridge"]
|
|
name:
|
|
$ref: "#/definitions/string_or_param"
|
|
members:
|
|
type: array
|
|
items:
|
|
oneOf:
|
|
- $ref: "#/definitions/interface"
|
|
- $ref: "#/definitions/vlan"
|
|
- $ref: "#/definitions/ovs_bond"
|
|
- $ref: "#/definitions/ovs_patch_port"
|
|
- $ref: "#/definitions/ovs_tunnel"
|
|
- $ref: "#/definitions/ovs_dpdk_bond"
|
|
- $ref: "#/definitions/ovs_dpdk_port"
|
|
ovs_options:
|
|
$ref: "#/definitions/ovs_options_string_or_param"
|
|
ovs_extra:
|
|
$ref: "#/definitions/ovs_extra_or_param"
|
|
ovs_fail_mode:
|
|
$ref: "#/definitions/ovs_fail_mode_or_param"
|
|
# common options:
|
|
use_dhcp:
|
|
$ref: "#/definitions/bool_or_param"
|
|
use_dhcp6:
|
|
$ref: "#/definitions/bool_or_param"
|
|
addresses:
|
|
$ref: "#/definitions/list_of_address"
|
|
routes:
|
|
$ref: "#/definitions/list_of_route"
|
|
mtu:
|
|
$ref: "#/definitions/int_or_param"
|
|
nic_mapping:
|
|
$ref: "#/definitions/nic_mapping"
|
|
persist_mapping:
|
|
$ref: "#/definitions/bool_or_param"
|
|
defroute:
|
|
$ref: "#/definitions/bool_or_param"
|
|
dhclient_args:
|
|
$ref: "#/definitions/string_or_param"
|
|
dns_servers:
|
|
$ref: "#/definitions/list_of_ip_address_string_or_param"
|
|
nm_controlled:
|
|
$ref: "#/definitions/bool_or_param"
|
|
onboot:
|
|
$ref: "#/definitions/bool_or_param"
|
|
required:
|
|
- type
|
|
- name
|
|
- members
|
|
additionalProperties: False
|
|
|
|
ovs_bond:
|
|
type: object
|
|
properties:
|
|
type:
|
|
enum: ["ovs_bond"]
|
|
name:
|
|
$ref: "#/definitions/string_or_param"
|
|
members:
|
|
type: array
|
|
items:
|
|
oneOf:
|
|
- $ref: "#/definitions/interface"
|
|
- $ref: "#/definitions/sriov_vf"
|
|
- $ref: "#/definitions/vlan"
|
|
minItems: 1
|
|
ovs_options:
|
|
$ref: "#/definitions/ovs_options_string_or_param"
|
|
ovs_extra:
|
|
$ref: "#/definitions/ovs_extra_or_param"
|
|
# common options:
|
|
use_dhcp:
|
|
$ref: "#/definitions/bool_or_param"
|
|
use_dhcp6:
|
|
$ref: "#/definitions/bool_or_param"
|
|
addresses:
|
|
$ref: "#/definitions/list_of_address"
|
|
routes:
|
|
$ref: "#/definitions/list_of_route"
|
|
mtu:
|
|
$ref: "#/definitions/int_or_param"
|
|
nic_mapping:
|
|
$ref: "#/definitions/nic_mapping"
|
|
persist_mapping:
|
|
$ref: "#/definitions/bool_or_param"
|
|
defroute:
|
|
$ref: "#/definitions/bool_or_param"
|
|
dhclient_args:
|
|
$ref: "#/definitions/string_or_param"
|
|
dns_servers:
|
|
$ref: "#/definitions/list_of_ip_address_string_or_param"
|
|
nm_controlled:
|
|
$ref: "#/definitions/bool_or_param"
|
|
onboot:
|
|
$ref: "#/definitions/bool_or_param"
|
|
required:
|
|
- type
|
|
- name
|
|
- members
|
|
additionalProperties: False
|
|
|
|
ovs_patch_port:
|
|
type: object
|
|
properties:
|
|
type:
|
|
enum: ["ovs_patch_port"]
|
|
name:
|
|
$ref: "#/definitions/string_or_param"
|
|
bridge_name:
|
|
$ref: "#/definitions/string_or_param"
|
|
peer:
|
|
$ref: "#/definitions/string_or_param"
|
|
primary:
|
|
$ref: "#/definitions/bool_or_param"
|
|
ovs_options:
|
|
$ref: "#/definitions/ovs_options_list_or_param"
|
|
ovs_extra:
|
|
$ref: "#/definitions/ovs_extra_or_param"
|
|
# common options:
|
|
use_dhcp:
|
|
$ref: "#/definitions/bool_or_param"
|
|
use_dhcp6:
|
|
$ref: "#/definitions/bool_or_param"
|
|
addresses:
|
|
$ref: "#/definitions/list_of_address"
|
|
routes:
|
|
$ref: "#/definitions/list_of_route"
|
|
mtu:
|
|
$ref: "#/definitions/int_or_param"
|
|
nic_mapping:
|
|
$ref: "#/definitions/nic_mapping"
|
|
persist_mapping:
|
|
$ref: "#/definitions/bool_or_param"
|
|
defroute:
|
|
$ref: "#/definitions/bool_or_param"
|
|
dhclient_args:
|
|
$ref: "#/definitions/string_or_param"
|
|
dns_servers:
|
|
$ref: "#/definitions/list_of_ip_address_string_or_param"
|
|
nm_controlled:
|
|
$ref: "#/definitions/bool_or_param"
|
|
onboot:
|
|
$ref: "#/definitions/bool_or_param"
|
|
required:
|
|
- type
|
|
- name
|
|
- bridge_name
|
|
- peer
|
|
additionalProperties: False
|
|
|
|
ovs_tunnel:
|
|
type: object
|
|
properties:
|
|
type:
|
|
enum: ["ovs_tunnel"]
|
|
name:
|
|
$ref: "#/definitions/string_or_param"
|
|
tunnel_type:
|
|
$ref: "#/definitions/ovs_tunnel_type_or_param"
|
|
primary:
|
|
$ref: "#/definitions/bool_or_param"
|
|
ovs_options:
|
|
$ref: "#/definitions/ovs_options_list_or_param"
|
|
ovs_extra:
|
|
$ref: "#/definitions/ovs_extra_or_param"
|
|
# common options:
|
|
use_dhcp:
|
|
$ref: "#/definitions/bool_or_param"
|
|
use_dhcp6:
|
|
$ref: "#/definitions/bool_or_param"
|
|
addresses:
|
|
$ref: "#/definitions/list_of_address"
|
|
routes:
|
|
$ref: "#/definitions/list_of_route"
|
|
mtu:
|
|
$ref: "#/definitions/int_or_param"
|
|
nic_mapping:
|
|
$ref: "#/definitions/nic_mapping"
|
|
persist_mapping:
|
|
$ref: "#/definitions/bool_or_param"
|
|
defroute:
|
|
$ref: "#/definitions/bool_or_param"
|
|
dhclient_args:
|
|
$ref: "#/definitions/string_or_param"
|
|
dns_servers:
|
|
$ref: "#/definitions/list_of_ip_address_string_or_param"
|
|
nm_controlled:
|
|
$ref: "#/definitions/bool_or_param"
|
|
onboot:
|
|
$ref: "#/definitions/bool_or_param"
|
|
required:
|
|
- type
|
|
- name
|
|
- tunnel_type
|
|
additionalProperties: False
|
|
|
|
ovs_dpdk_bond:
|
|
type: object
|
|
properties:
|
|
type:
|
|
enum: ["ovs_dpdk_bond"]
|
|
name:
|
|
$ref: "#/definitions/string_or_param"
|
|
members:
|
|
type: array
|
|
items:
|
|
- $ref: "#/definitions/ovs_dpdk_port"
|
|
ovs_options:
|
|
$ref: "#/definitions/ovs_options_string_or_param"
|
|
ovs_extra:
|
|
$ref: "#/definitions/ovs_extra_or_param"
|
|
rx_queue:
|
|
$ref: "#/definitions/int_or_param"
|
|
# common options:
|
|
use_dhcp:
|
|
$ref: "#/definitions/bool_or_param"
|
|
use_dhcp6:
|
|
$ref: "#/definitions/bool_or_param"
|
|
addresses:
|
|
$ref: "#/definitions/list_of_address"
|
|
routes:
|
|
$ref: "#/definitions/list_of_route"
|
|
mtu:
|
|
$ref: "#/definitions/int_or_param"
|
|
nic_mapping:
|
|
$ref: "#/definitions/nic_mapping"
|
|
persist_mapping:
|
|
$ref: "#/definitions/bool_or_param"
|
|
defroute:
|
|
$ref: "#/definitions/bool_or_param"
|
|
dhclient_args:
|
|
$ref: "#/definitions/string_or_param"
|
|
dns_servers:
|
|
$ref: "#/definitions/list_of_ip_address_string_or_param"
|
|
nm_controlled:
|
|
$ref: "#/definitions/bool_or_param"
|
|
onboot:
|
|
$ref: "#/definitions/bool_or_param"
|
|
required:
|
|
- type
|
|
- name
|
|
- members
|
|
additionalProperties: False
|
|
|
|
ovs_dpdk_port:
|
|
type: object
|
|
properties:
|
|
type:
|
|
enum: ["ovs_dpdk_port"]
|
|
name:
|
|
$ref: "#/definitions/string_or_param"
|
|
driver:
|
|
$ref: "#/definitions/string_or_param"
|
|
members:
|
|
type: array
|
|
items:
|
|
- $ref: "#/definitions/interface"
|
|
minItems: 1
|
|
maxItems: 1
|
|
primary:
|
|
$ref: "#/definitions/bool_or_param"
|
|
ovs_options:
|
|
$ref: "#/definitions/ovs_options_string_or_param"
|
|
ovs_extra:
|
|
$ref: "#/definitions/ovs_extra_or_param"
|
|
rx_queue:
|
|
$ref: "#/definitions/int_or_param"
|
|
# common options:
|
|
use_dhcp:
|
|
$ref: "#/definitions/bool_or_param"
|
|
use_dhcp6:
|
|
$ref: "#/definitions/bool_or_param"
|
|
addresses:
|
|
$ref: "#/definitions/list_of_address"
|
|
routes:
|
|
$ref: "#/definitions/list_of_route"
|
|
mtu:
|
|
$ref: "#/definitions/int_or_param"
|
|
nic_mapping:
|
|
$ref: "#/definitions/nic_mapping"
|
|
persist_mapping:
|
|
$ref: "#/definitions/bool_or_param"
|
|
defroute:
|
|
$ref: "#/definitions/bool_or_param"
|
|
dhclient_args:
|
|
$ref: "#/definitions/string_or_param"
|
|
dns_servers:
|
|
$ref: "#/definitions/list_of_ip_address_string_or_param"
|
|
nm_controlled:
|
|
$ref: "#/definitions/bool_or_param"
|
|
onboot:
|
|
$ref: "#/definitions/bool_or_param"
|
|
required:
|
|
- type
|
|
- name
|
|
- members
|
|
additionalProperties: False
|
|
|
|
vpp_interface:
|
|
type: object
|
|
properties:
|
|
type:
|
|
enum: ["vpp_interface"]
|
|
name:
|
|
$ref: "#/definitions/string_or_param"
|
|
uio_driver:
|
|
$ref: "#/definitions/string_or_param"
|
|
options:
|
|
$ref: "#/definitions/string_or_param"
|
|
# common options:
|
|
use_dhcp:
|
|
$ref: "#/definitions/bool_or_param"
|
|
use_dhcp6:
|
|
$ref: "#/definitions/bool_or_param"
|
|
addresses:
|
|
$ref: "#/definitions/list_of_address"
|
|
routes:
|
|
$ref: "#/definitions/list_of_route"
|
|
mtu:
|
|
$ref: "#/definitions/int_or_param"
|
|
nic_mapping:
|
|
$ref: "#/definitions/nic_mapping"
|
|
persist_mapping:
|
|
$ref: "#/definitions/bool_or_param"
|
|
defroute:
|
|
$ref: "#/definitions/bool_or_param"
|
|
dhclient_args:
|
|
$ref: "#/definitions/string_or_param"
|
|
dns_servers:
|
|
$ref: "#/definitions/list_of_ip_address_string_or_param"
|
|
nm_controlled:
|
|
$ref: "#/definitions/bool_or_param"
|
|
onboot:
|
|
$ref: "#/definitions/bool_or_param"
|
|
required:
|
|
- type
|
|
- name
|
|
additionalProperties: False
|
|
|
|
vpp_bond:
|
|
type: object
|
|
properties:
|
|
type:
|
|
enum: ["vpp_bond"]
|
|
name:
|
|
$ref: "#/definitions/string_or_param"
|
|
uio_driver:
|
|
$ref: "#/definitions/string_or_param"
|
|
options:
|
|
$ref: "#/definitions/string_or_param"
|
|
# common options:
|
|
use_dhcp:
|
|
$ref: "#/definitions/bool_or_param"
|
|
use_dhcp6:
|
|
$ref: "#/definitions/bool_or_param"
|
|
addresses:
|
|
$ref: "#/definitions/list_of_address"
|
|
routes:
|
|
$ref: "#/definitions/list_of_route"
|
|
mtu:
|
|
$ref: "#/definitions/int_or_param"
|
|
nic_mapping:
|
|
$ref: "#/definitions/nic_mapping"
|
|
persist_mapping:
|
|
$ref: "#/definitions/bool_or_param"
|
|
defroute:
|
|
$ref: "#/definitions/bool_or_param"
|
|
dhclient_args:
|
|
$ref: "#/definitions/string_or_param"
|
|
dns_servers:
|
|
$ref: "#/definitions/list_of_ip_address_string_or_param"
|
|
nm_controlled:
|
|
$ref: "#/definitions/bool_or_param"
|
|
onboot:
|
|
$ref: "#/definitions/bool_or_param"
|
|
members:
|
|
type: array
|
|
items:
|
|
oneOf:
|
|
- $ref: "#/definitions/vpp_interface"
|
|
bonding_options:
|
|
$ref: "#/definitions/string_or_param"
|
|
required:
|
|
- type
|
|
- name
|
|
additionalProperties: False
|
|
|
|
contrail_vrouter:
|
|
type: object
|
|
properties:
|
|
type:
|
|
enum: ["contrail_vrouter"]
|
|
name:
|
|
$ref: "#/definitions/string_or_param"
|
|
members:
|
|
type: array
|
|
items:
|
|
- $ref: "#/definitions/interface"
|
|
minItems: 1
|
|
maxItems: 1
|
|
# common options:
|
|
use_dhcp:
|
|
$ref: "#/definitions/bool_or_param"
|
|
use_dhcp6:
|
|
$ref: "#/definitions/bool_or_param"
|
|
addresses:
|
|
$ref: "#/definitions/list_of_address"
|
|
routes:
|
|
$ref: "#/definitions/list_of_route"
|
|
mtu:
|
|
$ref: "#/definitions/int_or_param"
|
|
nic_mapping:
|
|
$ref: "#/definitions/nic_mapping"
|
|
persist_mapping:
|
|
$ref: "#/definitions/bool_or_param"
|
|
defroute:
|
|
$ref: "#/definitions/bool_or_param"
|
|
dhclient_args:
|
|
$ref: "#/definitions/string_or_param"
|
|
dns_servers:
|
|
$ref: "#/definitions/list_of_ip_address_string_or_param"
|
|
nm_controlled:
|
|
$ref: "#/definitions/bool_or_param"
|
|
required:
|
|
- type
|
|
- name
|
|
- members
|
|
additionalProperties: False
|
|
|
|
contrail_vrouter_dpdk:
|
|
type: object
|
|
properties:
|
|
type:
|
|
enum: ["contrail_vrouter_dpdk"]
|
|
name:
|
|
$ref: "#/definitions/string_or_param"
|
|
members:
|
|
type: array
|
|
items:
|
|
- $ref: "#/definitions/interface"
|
|
minItems: 1
|
|
bond_mode:
|
|
oneOf:
|
|
- $ref: "#/definitions/string_or_param"
|
|
- $ref: "#/definitions/int_or_param"
|
|
bond_policy:
|
|
oneOf:
|
|
- $ref: "#/definitions/string_or_param"
|
|
- $ref: "#/definitions/int_or_param"
|
|
driver:
|
|
$ref: "#/definitions/string_or_param"
|
|
coremask:
|
|
$ref: "#/definitions/string_or_param"
|
|
vlan_id:
|
|
oneOf:
|
|
- $ref: "#/definitions/string_or_param"
|
|
- $ref: "#/definitions/int_or_param"
|
|
# common options:
|
|
use_dhcp:
|
|
$ref: "#/definitions/bool_or_param"
|
|
use_dhcp6:
|
|
$ref: "#/definitions/bool_or_param"
|
|
addresses:
|
|
$ref: "#/definitions/list_of_address"
|
|
routes:
|
|
$ref: "#/definitions/list_of_route"
|
|
mtu:
|
|
$ref: "#/definitions/int_or_param"
|
|
nic_mapping:
|
|
$ref: "#/definitions/nic_mapping"
|
|
persist_mapping:
|
|
$ref: "#/definitions/bool_or_param"
|
|
defroute:
|
|
$ref: "#/definitions/bool_or_param"
|
|
dhclient_args:
|
|
$ref: "#/definitions/string_or_param"
|
|
dns_servers:
|
|
$ref: "#/definitions/list_of_ip_address_string_or_param"
|
|
nm_controlled:
|
|
$ref: "#/definitions/bool_or_param"
|
|
required:
|
|
- type
|
|
- name
|
|
- members
|
|
additionalProperties: False
|
|
|
|
linux_bridge:
|
|
type: object
|
|
properties:
|
|
type:
|
|
enum: ["linux_bridge"]
|
|
name:
|
|
$ref: "#/definitions/string_or_param"
|
|
members:
|
|
type: array
|
|
items:
|
|
oneOf:
|
|
- $ref: "#/definitions/interface"
|
|
- $ref: "#/definitions/vlan"
|
|
- $ref: "#/definitions/linux_bond"
|
|
# common options:
|
|
use_dhcp:
|
|
$ref: "#/definitions/bool_or_param"
|
|
use_dhcp6:
|
|
$ref: "#/definitions/bool_or_param"
|
|
addresses:
|
|
$ref: "#/definitions/list_of_address"
|
|
routes:
|
|
$ref: "#/definitions/list_of_route"
|
|
mtu:
|
|
$ref: "#/definitions/int_or_param"
|
|
nic_mapping:
|
|
$ref: "#/definitions/nic_mapping"
|
|
persist_mapping:
|
|
$ref: "#/definitions/bool_or_param"
|
|
defroute:
|
|
$ref: "#/definitions/bool_or_param"
|
|
dhclient_args:
|
|
$ref: "#/definitions/string_or_param"
|
|
dns_servers:
|
|
$ref: "#/definitions/list_of_ip_address_string_or_param"
|
|
nm_controlled:
|
|
$ref: "#/definitions/bool_or_param"
|
|
onboot:
|
|
$ref: "#/definitions/bool_or_param"
|
|
required:
|
|
- type
|
|
- name
|
|
- members
|
|
additionalProperties: False
|
|
|
|
linux_bond:
|
|
type: object
|
|
properties:
|
|
type:
|
|
enum: ["linux_bond"]
|
|
name:
|
|
$ref: "#/definitions/string_or_param"
|
|
members:
|
|
type: array
|
|
items:
|
|
oneOf:
|
|
- $ref: "#/definitions/interface"
|
|
- $ref: "#/definitions/vlan"
|
|
bonding_options:
|
|
$ref: "#/definitions/bonding_options"
|
|
# common options:
|
|
use_dhcp:
|
|
$ref: "#/definitions/bool_or_param"
|
|
use_dhcp6:
|
|
$ref: "#/definitions/bool_or_param"
|
|
addresses:
|
|
$ref: "#/definitions/list_of_address"
|
|
routes:
|
|
$ref: "#/definitions/list_of_route"
|
|
mtu:
|
|
$ref: "#/definitions/int_or_param"
|
|
nic_mapping:
|
|
$ref: "#/definitions/nic_mapping"
|
|
persist_mapping:
|
|
$ref: "#/definitions/bool_or_param"
|
|
defroute:
|
|
$ref: "#/definitions/bool_or_param"
|
|
dhclient_args:
|
|
$ref: "#/definitions/string_or_param"
|
|
dns_servers:
|
|
$ref: "#/definitions/list_of_ip_address_string_or_param"
|
|
nm_controlled:
|
|
$ref: "#/definitions/bool_or_param"
|
|
onboot:
|
|
$ref: "#/definitions/bool_or_param"
|
|
required:
|
|
- type
|
|
- name
|
|
- members
|
|
additionalProperties: False
|
|
|
|
linux_team:
|
|
type: object
|
|
properties:
|
|
type:
|
|
enum: ["team"]
|
|
name:
|
|
$ref: "#/definitions/string_or_param"
|
|
members:
|
|
type: array
|
|
items:
|
|
oneOf:
|
|
- $ref: "#/definitions/interface"
|
|
- $ref: "#/definitions/vlan"
|
|
bonding_options:
|
|
$ref: "#/definitions/bonding_options"
|
|
# common options:
|
|
use_dhcp:
|
|
$ref: "#/definitions/bool_or_param"
|
|
use_dhcp6:
|
|
$ref: "#/definitions/bool_or_param"
|
|
addresses:
|
|
$ref: "#/definitions/list_of_address"
|
|
routes:
|
|
$ref: "#/definitions/list_of_route"
|
|
mtu:
|
|
$ref: "#/definitions/int_or_param"
|
|
nic_mapping:
|
|
$ref: "#/definitions/nic_mapping"
|
|
persist_mapping:
|
|
$ref: "#/definitions/bool_or_param"
|
|
defroute:
|
|
$ref: "#/definitions/bool_or_param"
|
|
dhclient_args:
|
|
$ref: "#/definitions/string_or_param"
|
|
dns_servers:
|
|
$ref: "#/definitions/list_of_ip_address_string_or_param"
|
|
nm_controlled:
|
|
$ref: "#/definitions/bool_or_param"
|
|
onboot:
|
|
$ref: "#/definitions/bool_or_param"
|
|
required:
|
|
- type
|
|
- name
|
|
- members
|
|
additionalProperties: False
|
|
|
|
ivs_bridge:
|
|
type: object
|
|
properties:
|
|
type:
|
|
enum: ["ivs_bridge"]
|
|
members:
|
|
type: array
|
|
items:
|
|
oneOf:
|
|
- $ref: "#/definitions/interface"
|
|
- $ref: "#/definitions/ivs_interface"
|
|
# common options:
|
|
use_dhcp:
|
|
$ref: "#/definitions/bool_or_param"
|
|
use_dhcp6:
|
|
$ref: "#/definitions/bool_or_param"
|
|
addresses:
|
|
$ref: "#/definitions/list_of_address"
|
|
routes:
|
|
$ref: "#/definitions/list_of_route"
|
|
mtu:
|
|
$ref: "#/definitions/int_or_param"
|
|
nic_mapping:
|
|
$ref: "#/definitions/nic_mapping"
|
|
persist_mapping:
|
|
$ref: "#/definitions/bool_or_param"
|
|
defroute:
|
|
$ref: "#/definitions/bool_or_param"
|
|
dhclient_args:
|
|
$ref: "#/definitions/string_or_param"
|
|
dns_servers:
|
|
$ref: "#/definitions/list_of_ip_address_string_or_param"
|
|
nm_controlled:
|
|
$ref: "#/definitions/bool_or_param"
|
|
onboot:
|
|
$ref: "#/definitions/bool_or_param"
|
|
required:
|
|
- type
|
|
- members
|
|
additionalProperties: False
|
|
|
|
ivs_interface:
|
|
type: object
|
|
properties:
|
|
type:
|
|
enum: ["ivs_interface"]
|
|
name:
|
|
$ref: "#/definitions/string_or_param"
|
|
vlan_id:
|
|
$ref: "#/definitions/int_or_param"
|
|
primary:
|
|
$ref: "#/definitions/bool_or_param"
|
|
# common options:
|
|
use_dhcp:
|
|
$ref: "#/definitions/bool_or_param"
|
|
use_dhcp6:
|
|
$ref: "#/definitions/bool_or_param"
|
|
addresses:
|
|
$ref: "#/definitions/list_of_address"
|
|
routes:
|
|
$ref: "#/definitions/list_of_route"
|
|
mtu:
|
|
$ref: "#/definitions/int_or_param"
|
|
nic_mapping:
|
|
$ref: "#/definitions/nic_mapping"
|
|
persist_mapping:
|
|
$ref: "#/definitions/bool_or_param"
|
|
defroute:
|
|
$ref: "#/definitions/bool_or_param"
|
|
dhclient_args:
|
|
$ref: "#/definitions/string_or_param"
|
|
dns_servers:
|
|
$ref: "#/definitions/list_of_ip_address_string_or_param"
|
|
nm_controlled:
|
|
$ref: "#/definitions/bool_or_param"
|
|
onboot:
|
|
$ref: "#/definitions/bool_or_param"
|
|
required:
|
|
- type
|
|
- vlan_id
|
|
additionalProperties: False
|
|
|
|
nfvswitch_bridge:
|
|
type: object
|
|
properties:
|
|
type:
|
|
enum: ["nfvswitch_bridge"]
|
|
members:
|
|
type: array
|
|
items:
|
|
oneOf:
|
|
- $ref: "#/definitions/interface"
|
|
- $ref: "#/definitions/vlan"
|
|
- $ref: "#/definitions/nfvswitch_internal"
|
|
options:
|
|
$ref: "#/definitions/string_or_param"
|
|
# common options:
|
|
use_dhcp:
|
|
$ref: "#/definitions/bool_or_param"
|
|
use_dhcp6:
|
|
$ref: "#/definitions/bool_or_param"
|
|
addresses:
|
|
$ref: "#/definitions/list_of_address"
|
|
routes:
|
|
$ref: "#/definitions/list_of_route"
|
|
mtu:
|
|
$ref: "#/definitions/int_or_param"
|
|
nic_mapping:
|
|
$ref: "#/definitions/nic_mapping"
|
|
persist_mapping:
|
|
$ref: "#/definitions/bool_or_param"
|
|
defroute:
|
|
$ref: "#/definitions/bool_or_param"
|
|
dhclient_args:
|
|
$ref: "#/definitions/string_or_param"
|
|
dns_servers:
|
|
$ref: "#/definitions/list_of_ip_address_string_or_param"
|
|
nm_controlled:
|
|
$ref: "#/definitions/bool_or_param"
|
|
onboot:
|
|
$ref: "#/definitions/bool_or_param"
|
|
required:
|
|
- type
|
|
- options
|
|
- members
|
|
additionalProperties: False
|
|
|
|
nfvswitch_internal:
|
|
type: object
|
|
properties:
|
|
type:
|
|
enum: ["nfvswitch_internal"]
|
|
name:
|
|
$ref: "#/definitions/string_or_param"
|
|
vlan_id:
|
|
$ref: "#/definitions/int_or_param"
|
|
primary:
|
|
$ref: "#/definitions/bool_or_param"
|
|
# common options:
|
|
use_dhcp:
|
|
$ref: "#/definitions/bool_or_param"
|
|
use_dhcp6:
|
|
$ref: "#/definitions/bool_or_param"
|
|
addresses:
|
|
$ref: "#/definitions/list_of_address"
|
|
routes:
|
|
$ref: "#/definitions/list_of_route"
|
|
mtu:
|
|
$ref: "#/definitions/int_or_param"
|
|
nic_mapping:
|
|
$ref: "#/definitions/nic_mapping"
|
|
persist_mapping:
|
|
$ref: "#/definitions/bool_or_param"
|
|
defroute:
|
|
$ref: "#/definitions/bool_or_param"
|
|
dhclient_args:
|
|
$ref: "#/definitions/string_or_param"
|
|
dns_servers:
|
|
$ref: "#/definitions/list_of_ip_address_string_or_param"
|
|
nm_controlled:
|
|
$ref: "#/definitions/bool_or_param"
|
|
onboot:
|
|
$ref: "#/definitions/bool_or_param"
|
|
required:
|
|
- type
|
|
- vlan_id
|
|
additionalProperties: False
|
|
|
|
ib_interface:
|
|
type: object
|
|
properties:
|
|
type:
|
|
enum: ["ib_interface"]
|
|
name:
|
|
$ref: "#/definitions/string_or_param"
|
|
primary:
|
|
$ref: "#/definitions/bool_or_param"
|
|
ethtool_opts:
|
|
$ref: "#/definitions/string_or_param"
|
|
# common options:
|
|
use_dhcp:
|
|
$ref: "#/definitions/bool_or_param"
|
|
use_dhcp6:
|
|
$ref: "#/definitions/bool_or_param"
|
|
addresses:
|
|
$ref: "#/definitions/list_of_address"
|
|
routes:
|
|
$ref: "#/definitions/list_of_route"
|
|
mtu:
|
|
$ref: "#/definitions/int_or_param"
|
|
nic_mapping:
|
|
$ref: "#/definitions/nic_mapping"
|
|
persist_mapping:
|
|
$ref: "#/definitions/bool_or_param"
|
|
defroute:
|
|
$ref: "#/definitions/bool_or_param"
|
|
dhclient_args:
|
|
$ref: "#/definitions/string_or_param"
|
|
dns_servers:
|
|
$ref: "#/definitions/list_of_ip_address_string_or_param"
|
|
nm_controlled:
|
|
$ref: "#/definitions/bool_or_param"
|
|
onboot:
|
|
$ref: "#/definitions/bool_or_param"
|
|
required:
|
|
- type
|
|
- name
|
|
additionalProperties: False
|
|
|
|
type: array
|
|
items:
|
|
oneOf:
|
|
- $ref: "#/definitions/interface"
|
|
- $ref: "#/definitions/sriov_pf"
|
|
- $ref: "#/definitions/sriov_vf"
|
|
- $ref: "#/definitions/vlan"
|
|
- $ref: "#/definitions/ovs_bridge"
|
|
- $ref: "#/definitions/ovs_user_bridge"
|
|
- $ref: "#/definitions/ovs_bond"
|
|
- $ref: "#/definitions/ovs_patch_port"
|
|
- $ref: "#/definitions/ovs_tunnel"
|
|
- $ref: "#/definitions/ovs_dpdk_bond"
|
|
- $ref: "#/definitions/ovs_dpdk_port"
|
|
- $ref: "#/definitions/linux_bridge"
|
|
- $ref: "#/definitions/linux_bond"
|
|
- $ref: "#/definitions/linux_team"
|
|
- $ref: "#/definitions/ivs_bridge"
|
|
- $ref: "#/definitions/ivs_interface"
|
|
- $ref: "#/definitions/nfvswitch_bridge"
|
|
- $ref: "#/definitions/nfvswitch_internal"
|
|
- $ref: "#/definitions/ib_interface"
|
|
- $ref: "#/definitions/vpp_interface"
|
|
- $ref: "#/definitions/vpp_bond"
|
|
- $ref: "#/definitions/contrail_vrouter"
|
|
- $ref: "#/definitions/contrail_vrouter_dpdk"
|
|
minItems: 1
|