# == Class: nova::network::flatdhcp # # Configures nova-network with flat dhcp option # # === Parameters: # # [*fixed_range*] # (required) The IPv4 CIDR for the flat network # # [*flat_interface*] # (optional) FlatDHCP will bridge into this interface # Defaults to undef # # [*public_interface*] # (optional) # Defaults to undef # # [*flat_network_bridge*] # (optional) Bridge for simple network instances ( # Defaults to 'br100' # # [*force_dhcp_release*] # (optional) Send a dhcp release on instance termination # Defaults to true # # [*flat_injected*] # (optional) Whether to attempt to inject network setup into guest # Defaults to false # # [*dhcp_domain*] # (optional) domain to use for building the hostnames # Defaults to 'novalocal' # # [*dhcpbridge*] # (optional) 'location of nova-dhcpbridge' # Defaults to '/usr/bin/nova-dhcpbridge' # # [*dhcpbridge_flagfile*] # (optional) location of flagfiles for dhcpbridge # Defaults to '/etc/nova/nova.conf # class nova::network::flatdhcp ( $fixed_range, $flat_interface = undef, $public_interface = undef, $flat_network_bridge = 'br100', $force_dhcp_release = true, $flat_injected = false, $dhcp_domain = 'novalocal', $dhcpbridge = '/usr/bin/nova-dhcpbridge', $dhcpbridge_flagfile = '/etc/nova/nova.conf' ) { if $::osfamily == 'RedHat' and $::operatingsystem != 'Fedora' { package { 'dnsmasq-utils': ensure => present } } if $public_interface { nova_config { 'DEFAULT/public_interface': value => $public_interface } } nova_config { 'DEFAULT/network_manager': value => 'nova.network.manager.FlatDHCPManager'; 'DEFAULT/fixed_range': value => $fixed_range; 'DEFAULT/flat_interface': value => $flat_interface; 'DEFAULT/flat_network_bridge': value => $flat_network_bridge; 'DEFAULT/force_dhcp_release': value => $force_dhcp_release; 'DEFAULT/flat_injected': value => $flat_injected; 'DEFAULT/dhcp_domain': value => $dhcp_domain; 'DEFAULT/dhcpbridge': value => $dhcpbridge; 'DEFAULT/dhcpbridge_flagfile': value => $dhcpbridge_flagfile; } }